1

我正在尝试更改移动应用程序按钮的背景。Click 事件似乎太慢了,所以我使用了 vmousedown。这有效,但每页只有一次。我正在做这个。

Mousedown
$(.headerNavBar).on('vmousedown','.logout',function() {
$(this).removeClass('ui-bar-c').addClass('ui-bar-c');
});
Mouse UP
$(.headerNavBar).on('vmouseup','.logout',function() {
$(this).removeClass('ui-bar-c');
});
$(.headerNavBar).on('tap','.logout',function() {
$(this).removeClass('ui-bar-c');
});

HTML 是

<li><a href="#" class="logout" data-icon="back" data-theme="b">Log out</a></li>

该按钮位于 JQueryMobile 页面内容块中。

如果有更好的方法来改变背景渐变也很好。

更新:我刚刚在检查器中注意到正在添加和删除该类,它只是没有在页面上更新。

4

2 回答 2

1

使用父元素或文档绑定事件并给出选择器。第二件事你可以检查你是否有 vmousedown,它会是 mousedown 和 vmouseup 相同。

鼠标按下

$(document).on('vmousedown','.logout', function() {
   $(this).removeClass('ui-bar-c').addClass('ui-bar-c');
});

鼠标向上

$(document).on('vmouseup','.logout', function() {
      $(this).removeClass('ui-bar-c');
});
于 2012-10-31T14:56:30.860 回答
0
$('body').delegate('.logout','vmousedown', function() {
   $(this).removeClass('ui-bar-c').addClass('ui-bar-c');
});
于 2012-10-31T14:59:48.940 回答