0

这是一种特殊的情况。我有一个锚标签,点击锚标签,一个来自 jquery 插件的函数就会执行。但在某些页面上,我想在单击锚标记时执行另一个 javascript 函数。这意味着,我的 jQuery 插件为锚标记定义了一个默认单击事件,我将在我的页面上为调用不同函数的同一个锚标记实现另一个单击事件。截至目前,只有一个点击事件正在触发替换另一个。我想出了一个解决方案,将 click() 用于插件,mouseUp() 用于在某些页面上调用函数。

但基本上我想了解是否有一种方法可以将逻辑组合到 jquery 甚至在不同的地方并期望它执行所有这些?

4

2 回答 2

1

有几种方法可以实现这一点,但总的来说,我建议您将锚点包装在具有某种 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>
于 2012-06-04T12:54:42.083 回答
0

您可以使用 jQuery命名空间事件

于 2012-06-04T14:07:57.903 回答