0

我正在尝试更改后续行以仅添加一次处理程序

$('body').on('click.collapse.data-api', '[data-toggle=collapse]', function ( e ) {
})

我的想法是在第一次添加绑定后为元素添加一个属性,并在添加绑定之前检查元素是否具有该属性。

设置属性很简单:

$('body').find('[data-toggle=collapse]').attr('data-loaded',"true");

但是更改选择器以检查是否未设置属性是困难的部分。

我试过类似的东西:

$('body').on('click.collapse.data-api', '[data-toggle=collapse] :not([data-loaded])',function ( e ) {
})

但它不起作用......

任何人都可以帮忙吗?

谢谢。

4

1 回答 1

1

我只是胡乱猜测?

$('body').on('click', '.collapse.data-api[data-toggle="collapse"]', function(e) {
    if (!$(e.target).data('loaded')) $(e.target).attr('data-loaded', true);
});​

小提琴

于 2012-08-17T09:51:08.880 回答