1

嗨,我需要手动触发 touchmove 事件并将元素从移动设备(phonegap、jquery-mobile)上的计数器中拉出

$(elem).bind('touchstart', function(event) {
        event.preventDefault();                  
        var target = event.target;
        target = $(this);

        //this for example just changes the css position obviously
        target.css("margin-top", "50px"); 
});


elem.trigger('touchstart');

有没有办法手动设置事件并使用该事件触发对象?

var event = $.Event( "touchstart", { pageX:200, pageY:200 } );

我是用这个来拖拽的,作者已经提过interact js没办法做到这一点,推荐:

- 调用您的拖放侦听器并为它们提供您创建的事件对象或 - 触发模拟指针事件,以便交互将它们视为用户的拖动。

任何想法?

4

1 回答 1

0

不能在bind()外面声明函数直接调用吗?

$(elem).bind('touchstart', handler);
function handler(event) {
    event.preventDefault();                  
    var target = $(event.target);

    //Do stuff with pageX and pageY
    target.css("margin-top", "50px"); 
}

handler({pageX:200, pageY:200, target:elem, preventDefault:function(){}});
于 2014-06-09T09:11:52.167 回答