jQuery移动按钮保持紧迫

jay*_*ynp 8 jquery-mobile

我有一个jQuery移动按钮连接到ajax POST.如果POST失败,jQuery移动按钮会保持按下而不是"弹出".任何想法?

Gaj*_*res 7

它可以很容易地完成.

这是jsFiddle我之前的一个答案的例子:http://jsfiddle.net/3PhKZ/7/

如果你看一下这行代码:

$.mobile.activePage.find('.ui-btn-active').removeClass('ui-btn-active ui-focus');
Run Code Online (Sandbox Code Playgroud)

它将尝试在当前活动页面上找到按下的按钮,如果成功则将删除2个负责按钮按下状态的类.不幸的是纯CSS解决方案在这里是不可 您可以测试此示例,只需注释顶行,看看会发生什么.

最后一件事选择器$ .mobile.activePage只能在pagebeforeshow,pageshow,pagebeforechange,pagechange,pagebeforehide和pagehide页面事件中使用,所以要考虑到这一点.

如果您无法使用此选择器,只需将其替换为页面ID,如下所示:

$('#pageID').find('.ui-btn-active').removeClass('ui-btn-active ui-focus');
Run Code Online (Sandbox Code Playgroud)

所以你的最终代码看起来像这样:

$.ajax( "example.php" )
.success(function() { doStuff(); })
.error(function() { 
    $('#pageID').find('.ui-btn-active').removeClass('ui-btn-active ui-focus');
 })
Run Code Online (Sandbox Code Playgroud)