Skip to main content

$touch plugin

Add various gestures, such as swipes, taps, and pinches to your content

eWizard Team avatar
Written by eWizard Team
Updated over 2 years ago

Use the $touch plugin to add the features of the Hammer.js library to eWizard.js. With the $touch plugin, you can add various gestures made by touch or mouse from Hammer.js and use them in your e-Detailers, sites, and messenger ads. The $touch plugin supports the following Hammer.js gestures:

Pan

Pinch

Press

Rotate

Swipe

Tap


TIP: The $touch plugin isn't available for emails.


To use the plugin, add hooks with the gestures to the App.vue file. For example, an App.vue file with hooks for the tap, pan, rotate, and pinch gestures:

<!-- App.vue --><script>
import stickybits from 'stickybits';
import { DynamicBlocksLoader } from 'ewizardjs';
import { themes } from './common/blocks-library/blocks-themes.json';
import { components } from './common/blocks-library/blocks.json';import { touchMixin } from './plugins/touch';export default {
name: 'wiz-app',
mixins: [touchMixin],
components: {
DynamicBlocksLoader,
},
data() {
return {
blockThemes: themes,
blocksList: components,
};
},
mounted() {
console.log(this.$touch.manager);
this.$touch.manager.on('tap', (e) => {
console.log('tap', e);
});
this.$touch.manager.on('pan', (e) => {
console.log('pan', e);
});
this.$touch.manager.on('rotate', (e) => {
console.log('rotate', e);
});
this.$touch.manager.on('pinch', (e) => {
console.log('pinch', e);
});
stickybits('.position-sticky-top', { scrollEl: '.root' });
},
};
</script>

You can use the Hammer.js recognizers to implement various gestures. For basic examples, see Hammer.js documentation.

Did this answer your question?