@veams/component-cta
v1.0.2
Published
The CTA component is a powerful one. It can be used as a simple link or button component.
Downloads
59
Readme
Call-To-Action
Description
The CTA component is a powerful one. It can be used as simple link or button component.
But it can also be used as data-js-item
in other components or as data-js-module
.
Usages
Global trigger
When using this the component as data-js-module
the component can fire global events.
That means you can listen in other modules on this event and work with the provided data.
Nice examples for the cta component as data-js-module
are:
- a simple toggler (mobile navigation, search toggler)
- overlay opener with custom data
Customization
But you can also use this component as data-js-item
in other components.
In this way you need to initialize the CTA manually, but you have the power to overwrite the clickHandler
.
Example usage
cta-usage.hbs
A <script>
tag is included with a global event handler to produce an alert dialog box when clicking on the button.
Requirements
- @veams/core - Veams Core Framework.
- @veams/query or
jquery
- Veams Query or jQuery. - @veams/component - Veams Component.
Installation
Installation with Veams
veams install component cta
veams -i c cta
Fields
cta.hbs
Settings
| Parameter | Type | Value | Description |
|:--- | :---: |:---: | :--- |
| settings.ctaButton | Boolean | a
| Define a button or link as CTA.|
| settings.ctaContextClass | String | default
| Context class of the CTA.|
| settings.ctaClass | String | | Modifier classes for the CTA.|
| settings.ctaTarget | String | | You can define a target when using an <a>
tag.|
| settings.ctaJsItem | String | | You can add this component as a data-js-item.|
| settings.ctaJsModule | Boolean | | You can add this component as a data-js-module.|
| settings.ctaJsOptions | Object | | You can add options to the CTA. This object gets stringified in your Markup.|
Content
| Parameter | Type | Value | Description |
|:--- | :---: |:---: | :--- |
| content.ctaTitle | String | | You should define a title when using the <a>
tag.|
cta__content.hbs
Settings
| Parameter | Type | Value | Description |
|:--- | :---: |:---: | :--- |
| settings.ctaIcon | Boolean | | Renders .cta__icon
into the Markup if set to true.|
| settings.ctaContentJsItem | Boolean | | Renders "data-js-item="cta-content"
into the Markup if set to true.|
Content
| Parameter | Type | Value | Description | |:--- | :---: |:---: | :--- | | content.ctaContent | String | |Content of the CTA.|
JavaScript Options
| Parameter | Type | Value | Description |
|:--- | :---: |:---: | :--- |
| activeClass | String | is-active
| Active class for CTA if it is clicked.|
| clickHandler | String | click
| Click handler like touchstart.|
| closedLabel | String | null
| Optional label for button while not active.|
| ctaContent | String | '[data-js-item="cta-content"]'
| Element selector for CTA content (used for updating the button text).|
| globalEvent | String | cta:click
| Global event triggered on click.|
| openedLabel | String | null
| Optional label for button while active.|