1

几乎完成了我的第一个 jQuery 插件。它需要一个 HTML 表格,并保持标题固定,并使列可排序。Demo 位于http://tapmeister.com/test/sortfixedtable/index.html(点击 Create 启动插件)。

我添加了一个旨在删除插件的 destroy() 方法。问题是它不会删除事件。

在第 70 行,我使用类似于以下内容添加事件:

$(this).on('click.sortfixedtable',methods.sortClick);

在第 151 行,我尝试使用类似于以下内容的内容删除事件:

$(this).off('.sortfixedtable');

然而,off() 方法并没有删除点击事件。谁能告诉我我在哪里搞砸了。谢谢

4

2 回答 2

1

所以请执行以下操作

$(this).on('click','.sortfixedtable',methods.sortClick);

$(this).off('click','.sortfixedtable');

不行?第二个基本上说

使用类“sortfixedtable”从this内部的元素中删除 click 事件处理程序

于 2012-11-24T18:03:30.027 回答
1

您将事件处理程序绑定到<th>元素,但尝试将其从<table>元素中删除。相反,将其从<th>具有处理程序绑定的相同元素中删除:

t_head.find('th').off(".sortfixedtable");
于 2012-11-24T18:08:02.937 回答