来自div的jQuery remove()不起作用

时间:2012-09-06 13:01:16

标签: jquery

您好我想删除jQuery中的div。这是我的代码,但我有测试但不起作用,div没有删除。帮助我。

var img_old=$(".colCenter").find('#div_'+old_id);
img_old.delay(10).animate({top:1440},1500, function(){
img_old.remove();
});

这是html

<div class="colCenter" id="two">
    <div id="randomdiv" style="display:none;"></div>
    <div class="content" id="div_index">
        <div class="img_background">
                        <img src="img/sfondi/index.jpg" alt="" class="old_img" id="img_index"/>
                    </div>
                    <div class="logo_home">
                        <a href="index.php"><img src="img/logo_grande.png" alt="Web & Design" title="Web & Design" /></a>
                    </div>
                </div>
</div>

5 个答案:

答案 0 :(得分:2)

http://jsfiddle.net/mblase75/FJchB/ - 您的代码适用于我。

您的代码中可能未设置变量old_id?我不得不将其设置为“索引”以使任何事情发生。

正如其他人所建议的那样,您还需要将代码包装在$(document).ready{...}块中,以便它只在元素加载后运行。

答案 1 :(得分:1)

<script>
$(function(){
 var img_old=$(".colCenter").find('#divx');
 img_old.delay(10).animate({top:1440},1500, function(){
 img_old.remove();
});
});
</script>
<div class="colCenter">
<div  id="divx">Another one text 3</div> 
</div>

对我来说很好。 尝试执行DOM准备就绪的javascript代码。

答案 2 :(得分:1)

检查old_id是否为“索引”,否则您的代码无效。因为只有div_index。

尝试在以下代码之间执行此代码:

$('document').ready( function() {

}

答案 3 :(得分:0)

在这个例子中可以正常工作:

jsfiddle

<强> HTML

ID: <input type="text" id="id" value="0"/>

<div>
   <div class="colCenter">
      <div id="div_0">0</div>
      <div id="div_1">1</div>
      <div id="div_2">2</div>
      <div id="div_3">3</div>
   </div>
</div>

<input type="button" id="button" value="Go"/>

<强> JS

$(function() {
    $('#button').click(function() {

        var old_id = $('#id').val();
        var img_old = $(".colCenter").find('#div_' + old_id);
        img_old.delay(10).animate({
            top: 1440
        }, 1500, function() {
            img_old.remove();
        });
    });
});​

答案 4 :(得分:0)

试试这个

var old_id = 'index';
var img_old = $('.colCenter').find('#div_' + old_id);
img_old.delay(10).animate({
    top: 1440
}, 1500, function() {
    img_old.remove();
});