我有這樣的代碼......的jQuery的.html( '')沒有工作,我希望
$(".loadMsg").load('modalAnsmessages.php?id=<?php echo $row['id']; ?>&t=r',function(){
$('#preloader').fadeOut();
$(".modal_dialog .content").css({ 'background-color': '#eeeeee' });
setTimeout("$.fancybox.resize();",500);
});
工作正常。後來我運行這個代碼...
$(".p_close").click(function(){
$(".loadMsg").html('');
$(".loadMsgOpen").show();
$(".modal_dialog .content").css({ 'background-color': '#ffffff' });
setTimeout("$.fancybox.resize();",500);
});
...代碼乍一看似乎運行良好;然而,我不認爲$(".loadMsg").html('');
正在按我的預期工作。每次運行第一個代碼塊時,以前的每個.loadMSG
內容都會暫時顯示,直到它最終通過所有先前的實例並停止。有時它會停在正確的位置,有時不會。
我想要發生的是,當$(".p_close").click
運行時,我想所有內存$(".loadMsg")
都消失了。我認爲$(".loadMsg").html('');
會這樣做,但顯然我錯了。
使用'$(「。loadMsg」)。empty()'來代替。 '.html('')'是.empty()的封裝。append()' – 2013-03-11 17:56:13
嘗試過'.empty()'但沒有成功。感謝@BradM的想法,但。 – 2013-03-11 18:28:17
我並不是暗示使用'.empty()'作爲解決方案,就像更精確的代碼一樣。我不確切知道你想要用你的代碼做什麼,但我的建議是隱藏所有內容,並在準備好時才顯示它。它顯示你在某些代碼中沒有顯示的錯誤。 – 2013-03-11 18:42:39