使用不同的代码块多次调用jQuery事件以执行

时间:2012-06-04 12:37:46

标签: jquery

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

但基本上我想了解是否有一种方法可以将逻辑与jquery结合起来,即使在不同的地方,并期望它能够执行所有这些?

2 个答案:

答案 0 :(得分: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>

答案 1 :(得分:0)

您可以使用jQuery Namespaced Events