0
如何在重新調整大小事件時重新初始化HammerJS?如何重新初始化調整大小事件的HammerJS?
我的問題是,當我觸發resize事件的選擇器重置,並使用jQuery匹配容器$('。container')將返回一個索引0所有的時間..在文檔準備工作之前。
$('。container')出現多次,所以它應該在滑動事件中增加。
任何人有任何想法?
$(document).ready(function() {
mobileCalculus(animation);
swipeActions($('.home-element-wrapper'), $('.home').width());
$(window).on('resize', function() {
mobileCalculus(animation);
});
});
function swipeActions(parent, offset) {
var curInd = 0;
var theThumb = $('.thumb');
var myElement = document.getElementById('main-swipe');
var max = theThumb.length - 1;
// create a simple instance
// by default, it only adds horizontal recognizers
var mc = new Hammer(myElement);
// listen to events...
mc.on("swipeleft", function(ev) {
curInd = $('.thumb.active').index() + 1;
if (curInd > max) {
curInd = max;
}
var newML = offset * curInd;
theThumb.removeClass('active');
theThumb.eq(curInd).addClass('active');
console.log($('.thumb.active').index() + 1);
parent.css({
'margin-left': '-'+newML+'px'
});
});
mc.on("swiperight", function(ev) {
curInd = $('.thumb.active').index() - 1;
if (curInd < 0) {
curInd = 0;
}
var newML = offset * curInd;
theThumb.removeClass('active');
theThumb.eq(curInd).addClass('active');
parent.css({
'margin-left': '-'+newML+'px'
});
});
}
例如jQuery有一個名爲.off
功能,停用之後,我們就可以把新的事件上選擇的事件。
$('element').off('swiperight').on('swiperight')