我有一系列对象,这些对象内部都有链接来切换交换。 “下一个”交换算法将当前对象附加到下一个对象。
$('a.getNext').click(function() {
var selector = 'div.foo';
var currentObject = $(this).parents(selector).first();
var nextObject = currentObject.nextAll(selector).first();
nextObject.append(currentObject);
});
发生交换,但是调用交换的链接(在“当前”上下文中)不再起作用。看着调试器,再次单击链接并查看对象
currentObject
似乎是什么之后,它在浏览器中为空白。如何重新建立click()
目标与其所在的正确“ new”(?)foo
div之间的连接?这是一个工作示例:http://jsfiddle.net/Z863z/2/
最佳答案
它应该是...
currentObject.insertAfter(nextObject);
...而不是
nextObject.append(currentObject)
;检查this fiddle以获得插图(以及一些简化的内容)。您的目标是将当前容器移到下一个容器之后。您的原始代码将当前元素放入下一个元素。这就是查找不再起作用的原因:结构损坏了。