【发布时间】:2012-08-21 17:55:28
【问题描述】:
我有两个 html 页面一个 index.html 和 groups.html 每个页面作为 ul > li > a 列表
具有不同的类名。
我已将点击事件放在单独的 js 文件中,如下所示:
// Index Page Onclick events
$('body').on('click','.menuClass',function(e) {
e.preventDefault();
var menuid = $(this).attr('id');
alert(menuid);
});
// click on groups html >> this page alert fires twice
$('body').on('click','.grpClass',function(e) {
e.preventDefault();
var menuid = $(this).attr('id');
alert(menuid);
});
脚本文件在两个 html 文件中加载,groups.html 的第二个函数会触发两次点击事件。
有没有什么办法可以避免或者有什么更好的方法来达到同样的效果?
【问题讨论】:
-
您是否尝试过将这 2 个选择器合并为 1 个,因为它们目前基本上是一样的?您使用的是 AJAXed 导航还是非 AJAXed 导航?
-
另外,如果您使用 jQuery Mobile,您可能希望绑定到 vclick,因为这是一个跨平台工作的标准化虚拟事件,而 click 在某些平台上可能无法工作
-
@ZathrusWriter : 感谢
vlick我知道我可以使用选择器,但最终会有 n 个页面,所以给我 n 个选择器.. 寻找一种优雅的方式来实现同样的目标。
标签: jquery jquery-mobile