几乎完成了我的第一个jQuery插件。它需要一个HTML表格,并保持标题固定,并使列可排序。演示位于http://tapmeister.com/test/sortfixedtable/index.html(单击“创建”以启动插件)。
我添加了一个destroy()方法,用于删除插件。问题是它没有删除事件。
在第70行,我使用类似的东西添加事件:
$(this).on('click.sortfixedtable',methods.sortClick);
在第151行,我尝试使用类似于:
的内容删除事件$(this).off('.sortfixedtable');
然而,off()方法不会删除click事件。任何人都可以告诉我在哪里弄乱。感谢
答案 0 :(得分:1)
以下是
$(this).on('click','.sortfixedtable',methods.sortClick);
和
$(this).off('click','.sortfixedtable');
不行吗?第二个基本上是说
使用“sortfixedtable”类
从 this 中的元素中删除click事件处理程序
答案 1 :(得分:1)
您将事件处理程序绑定到<th>
元素,但尝试将其从<table>
元素中删除。相反,将其从具有处理程序绑定的相同<th>
元素中删除:
t_head.find('th').off(".sortfixedtable");