jQuery DOM更改了我的CSS

时间:2011-06-26 01:38:22

标签: jquery html css jquery-selectors

我有这个:

if($('.content', wrapper).length === 0)
   $(data[current].content).appendTo(wrapper);
else
   $('.content', wrapper).replaceWith($(data[current].content));

var el = $('.content', wrapper);

哪个有效,但是这段代码应该做同样的事情:

var el = ($('.content', wrapper).length === 0) 
           ? $(data[current].content).appendTo(wrapper) 
           : $('.content', wrapper).replaceWith($(data[current].content));

搞砸了我的CSS。

在这两种情况下,

el似乎都是相同的,但出于某种奇怪的原因,我的动画在此之后出现了问题,很可能是因为一些CSS更改......

我做错了什么?

1 个答案:

答案 0 :(得分:2)

.replaceWith将返回已替换的内容(并且不再位于DOM中)。来自jQuery docs

  必须注意的是原件   返回jQuery对象。这个对象   指的是已经存在的元素   从DOM中删除,而不是新的   已取代它的元素。