动态控制jQuery Mobile事件/操作

时间:2013-06-24 09:36:55

标签: jquery jquery-mobile

我正在尝试动态控制JQuery移动swipeleft&的动作。 swiperight事件,但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(){}中给出的所有指令,并且不会重写它们。

有没有办法重写它们?

1 个答案:

答案 0 :(得分: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/