我想覆盖 Drupal 菜单编写的悬停事件。因为我无法修改 Drupal 编写的代码,所以我想知道如何查看它然后覆盖它。
问问题
115 次
2 回答
2
您可以通过检查页面中包含的 JavaScript 来查看代码是如何工作的......我想像 Drupal 这样的 CMS,虽然 JavaScript 构建在 jQuery 之上,但试图找到添加此事件的确切位置将类似于寻找针大海捞针。
虽然$('selector').off('eventName');
在基本情况下可以工作(即,如果事件处理程序直接附加到元素),但在处理程序绑定到祖先的情况下将无法工作。
解决此问题的最简单方法是将您自己的事件添加到元素并用于stopPropagation()
停止已绑定到祖先的事件处理程序触发。
$('selector').off('eventName').on('eventName', function (e) {
e.stopPropagation();
});
...对此的简写是通过false
而不是function
:
$('selector').off('eventName').on('eventName', false);
有关详细信息,请参阅on()
。
于 2012-12-24T16:16:04.813 回答
0
使用events
对象查看附加到对象的事件:
$('selector').data('events')
或者您可以一起删除 jQuery 事件:
$('selector').off('eventName');
于 2012-12-24T16:09:15.033 回答