这是一种特殊的情况。我有一个锚标签,点击这个锚标签,jquery插件中的一个函数就会执行。但在某些页面上,我想在单击锚标签时执行另一个javascript函数。这意味着,我的jQuery插件有一个为锚标签定义的默认点击事件,我将在我的页面上为同一个锚标签实现另一个点击事件,该事件调用不同的函数。到目前为止,只有一个单击事件正在触发,以替换另一个事件。我想出了一个解决方案,使用click()处理插件,使用mouseUp()调用某些页面上的函数。
但基本上,我想了解的是,有没有一种方法可以将逻辑组合到jquery中,即使在不同的位置,并期望它执行所有这些逻辑?
发布于 2012-06-04 14:07:58
您可以使用jQuery Namespaced Events
发布于 2012-06-04 12:54:42
有几种方法可以做到这一点,但一般来说,我建议您将锚点包装在具有某种id或类的父元素中。然后用它来决定调用什么。例如:
JS:
function doThis(event) {
}
function doThat(event) {
doThis(event);
// more code for doThat...
}
$('.home #nav a').click(doThis);
$('.content #nav a').click(doThat);
主页的HTML:
<body class="home"><div id="nav"><a href="#">nav 1</a><a href="#">nav 2</a></div></body>
其他页面的HTML:
<body class="content"><div id="nav"><a href="#">nav 1</a><a href="#">nav 2</a></div></body>
https://stackoverflow.com/questions/10881403
复制相似问题