我正在使用jQuery UI库中的可排序小部件,并注意到了一些东西。如果我排序/删除一个可拖动的项目,如div,其中包含一个类似alert的脚本('run once')。它会在每次删除时执行javascript代码。我知道这非常有意义,因为它每次都会将它写入DOM。但现在我想知道是否有人知道解决这个问题的方法。 div(portlet)我倾向于排序所有包含javascript,不应该运行多次:)
感谢。
答案 0 :(得分:1)
在删除项目时向项目添加一个类,并在后续的drop上检查该类应该有效。类似的东西:
$('#element').bind('onDrop', function () {
if (!$(this).hasClass('dropped')) { // if the element hasn't been dropped before
$(this).addClass('dropped'); // add the dropped class
alert('run once');
}
});