appendTo并删除不在IE8中工作

时间:2010-11-08 17:21:28

标签: jquery jquery-selectors

以下html和jquery片段适用于: Firefox,Safari和Chrome,都在OSX和XP中(所有浏览器都是最新的生产更新。

我在safari,firefox和IE8中使用java调试器

但是在IE8中,CCC的内容并没有被移动!! 我没有IE6或IE7来测试。

<html>
<head>   </head>
<body>
   <div class="AAA">
      <div class="BBB">  </div>
   </div>

   <div class="CCC">
      <div id="0">   <img src="image/..." />  </div>
      <div id="1">   <img src="image/..." />  </div>
   </div>
</html>

jquery代码在一个单独的文件中:

jQuery(window).load(function() {
   // move div's contained within class="CCC" to class="BBB"
   $('.CCC div).each(function() {
      $(this).appendTo('.AAA .BBB');
});

完成此功能后,“CCC”类将没有内容。

我也试过删除。我在IE8中得到了相同的结果(不工作)。

执行“var temp”行后,应删除循环中的每个div。我正在查看调试器“html视图”来验证这一点。

$(.CCC div).each(function() {
    var temp = ('.CCC div:eq(0)').remove();
    temp.appendTo('BBB');
});

2 个答案:

答案 0 :(得分:1)

我认为你错过了$

 var temp = $('.CCC div:eq(0)').remove();

答案 1 :(得分:0)

当文档准备好而不是窗口加载时,您将要执行此操作。 此外,如果您使用的是没有Firebug的Firefox,并且可能(虽然我不确定)IE,代码中任何位置的console.log都会“杀死”JS。

$(document).ready(function() {
   // move div's contained within class="CCC" to class="BBB"
   $('.CCC div').each(function() {
      $(this).appendTo('.BBB'); //.AAA is not necessary if you want to append to all instances of .BBB
});