我在下面使用了顯示/隱藏代碼。我工作得很好,購買文本格式正在丟失。無論如何要防止這種情況?我有一些標記的風格和樣式表編碼使用顯示/隱藏時div樣式/格式丟失
<div id="fillit"></div>
<a href="javascript:void(0)" class="para">Sci Lit 1</a>
<div class="details">text for sci lit 1</div>
<a href="javascript:void(0)" class="para">Sci Lit 2</a>
<div class="details">text for sci lit 2</div>
<a href="javascript:void(0)" class="para">Sci Lit 3</a>
<div class="details">text for sci lit 3</div>
<style>
.inner-boxes .box3, .details1 {display:none;}
</style>
<script>
$(function(){
$(".para").click(function(){
$("#fillit").text($(this).next(".details1").text());
});
$(".details1:first").clone().appendTo("#fillit").show();
});
</script>
你並不需要在這裏做一個克隆或replaceWith,最終的結果就是從一個div中取出html並複製到顯示區域。一個簡單的.html()將做到這一點。 – ryanmarc 2011-05-26 06:59:05
@ryanmarc是的,但是這個解決方案也可以滿足'#fillit'中的其他元素,因此更加健壯。它仍然是一個有效的答案。不同之處在於編碼風格。我個人對'.html()'http://api.jquery.com/html/'有問題。某些瀏覽器可能不會返回完全複製原始文檔中的HTML源代碼的HTML。'# – 2011-05-26 07:17:13
#fillit作爲空格開始.children(「.details1」)不會與任何內容匹配,所以這不是真正有效的答案。 – ryanmarc 2011-05-26 07:30:12