jquery empty()不会清除div内容

时间:2012-12-05 16:25:18

标签: jquery

我有一个div,我正在使用.load加载一个滑块。出于某种原因,一旦我将滑块加载到div中,我无法清除它。我正在尝试使用jquery empty()函数,但它不起作用。我用来加载滑块的js是:

$("#nav").click(function() {
    $("#info_header").empty();
    $("#content_1").empty();
    $("#content_2").empty();
    $("#content_3").empty();
    $("#images").empty();
    $("#load_container").switchClass("load_container_port", "load_container_slider", .01);
    $("#controls").switchClass("controls_port", "controls_slider", .01);
    $("#info").switchClass("info_port", "info_slider", .01);
    $("#load_container").css({
        height:($(window).width() * 500) /1000
    });
    $("#info").css({
        height:($(window).width() * 500) /1000
    });
    $("#top_section").css({
        height:(($(window).width() * 500) /1000) + 40
    });
    setTimeout(function() {
        $("#slider").delay(100).load("home_slider.html"); 
    }, .03);       
});

然后我用来尝试清空并加载新内容的js是:

function portfolio_clear() {   
    $('#slider').empty(); 
    $("#images").empty();
    $("#load_container").switchClass("load_container_slider", "load_container_port", .01);
    $("#controls").switchClass("controls_slider", "controls_port", .01);
    $("#info").switchClass("info_slider", "info_port", .01);
}


$("#space").click(function() {

    $('#load_container').css({
        background: "#191919"
    });
    $('#close_white').css({
        display: "inline-block"
    });
    $('#close_black').css({
        display: "none"
    });
    $('#goto_white').css({
        display: "inline-block"
    });
    $('#goto_black').css({
        display: "none"
    });

    var id = $(this).attr('id');

    $("#info_header").load(id + "_header.txt");
    $("#content_1").load(id + "_1.txt");
    $("#content_2").load(id + "_2.txt");
    $("#content_3").load(id + "_3.txt");

    $("<img>", {
        src: "http://www.klossal.com/space.jpg"
    }).appendTo("#images");

    $('html, body').animate({
        scrollTop: 0
    }, 300);

    if (screen.width >= 1025) {
        $("#top_section").animate({
            height: 1112
        }, 300);
    }
    else {
        $("#top_section").animate({
            height: 926
        }, 300);
    }

});

可在此处查看该页面:

“http://173.254.28.83/~klossalc/index_test.html”

您可以通过单击左上角的klossal.com加载滑块,然后您可以尝试单击下面的第一个图块来尝试替换它,这将无效。如果你先点击瓷砖,他们加载正常,然后点击klossal.com加载滑块也可以,但不是相反。

1 个答案:

答案 0 :(得分:3)

我会用它来清除元素html:

$("#element_id").html('');

我无法看到你在调用portfolio_clear()的位置,如果你想在单击缩略图时发生这种情况,请试试这个:

$(".thumb").click(function() {
        portfolio_clear();
        $(".thumb_info").not(this).switchClass("info_color_3", "info_color_2", 300);
        $(this).find('.thumb_info').switchClass("info_color_2", "info_color_3", 300);
    });