所以给了我看起来像
的代码this.$dropdownButton.off('click.fpmenu').on('click.fpmenu', function (evt) {});
其中
this.$dropdownButton
是一个有效的按钮元素。
但是,如果我在同一个地方搜索.fpmenu($('.fpmenu')
),我什么也得不到。
我尝试附加到$dropdownButton
的开/关事件是否是fpmenu的click函数的委托?如果找不到fpmenu,是否会导致事件无法附加?
答案 0 :(得分:2)
fpmenu
是事件处理程序的命名空间。这使jQuery能够删除特定的事件处理程序,而无需更改其他事件处理程序。
请参阅jQuery的.on()
文档中的Event names and namespaces。
示例 - 单击按钮,查看名为的事件处理程序
var button = $('button');
button.on('click.fpmenu', function () { console.log('fpmenu'); }); // add fpmenu named event
button.on('click.somethingElse', function () { console.log('somethingElse'); }); // add somethingElse named event
button.off('click.fpmenu'); // remove fpmenu named event
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button>click me</button>