0

我正在尝试动态控制 JQuery 移动向左滑动和向右滑动事件的动作,但 Jquery Mobile 似乎附加了指令。前任:

function student_control(stat){
if (stat==true){
    $("#pageholder").swipeleft(function(e) {
        previousPage();
    });

    $("#pageholder").swiperight(function(e) {
        nextPage();
    });
}
else{
    $("#pageholder").swipeleft(function(e) {console.log('disabled');});

    $("#pageholder").swiperight(function(e) {console.log('disabled');});
}
}

如果在第一次调用中统计为真,然后在第二次调用中为假,函数将记录“禁用”并且还将更改页面(如果调用该函数,它将向前/向后移动 2 页等)这意味着 JQuery Mobile存储内部给出的所有指令function(){}并且不重写它们。

有没有办法重写它们?

4

1 回答 1

0

终于找到了。解除绑定和重新绑定它的工作原理......

禁用

$("#pageholder").unbind('swipeleft');
$("#pageholder").unbind('swiperight');

使能够

$("#pageholder").bind('swipeleft', function (){
//do something here
});
$("#pageholder").bind('swiperight', function (){
//do something here
});

http://jsfiddle.net/domeri/jMpMw/1/

于 2013-06-25T12:46:18.013 回答