當我點擊「顯示評論」鏈接時,我想打開一個Div並追加Facebook評論框。但是我想追加一次FB-Comments,然後使用鏈接切換該Div。什麼是最好的方式來追加HTML只是一次?
我是想這樣的事情,但我點擊鏈接,當然,每一次它只是追加它...
謝謝!
UPDATE:
現在,它的偉大的工作,但如果有人知道最有效的方式做到這一點,歡迎您!
當我點擊「顯示評論」鏈接時,我想打開一個Div並追加Facebook評論框。但是我想追加一次FB-Comments,然後使用鏈接切換該Div。什麼是最好的方式來追加HTML只是一次?
我是想這樣的事情,但我點擊鏈接,當然,每一次它只是追加它...
謝謝!
UPDATE:
現在,它的偉大的工作,但如果有人知道最有效的方式做到這一點,歡迎您!
添加內容後,向目標元素添加類名稱。在第二次添加之前檢查類名的存在。
1)添加類
$('#target').addClass("done")
2)檢查類
if($('#target').hasClass("done")) {
...
}
我試過使用「.hasClass」,但我做不到。不幸的是,我不是一個與jQuery親:( – Santiago
我已經添加了一個代碼示例。 –
我這樣做,但我認爲我做錯了... $( '#fb_comentarios_' + UID).addClass( 「完成」) \t如果($( '#fb_comentarios _')。hasClass(「完成「)){ \t \t $( '#fb_comentarios_' + UID).toggle(); \t}其他{ \t $( '#fb_comentarios_' + UID).append(commentBox); \t} – Santiago
用途:
$(document).load(function() {
//Load comments section here
$('.fb_comments').hide();
})
這將創建的意見,但隨後隱藏起來。然後創建按鈕,onClick
(或綁定.click()
)調用此:看
$('.fb_comments').toggle();
檢查的意見格已經在DOM存在,如果它不然後附加:
if(! $('#fb_comments_' + uid).children(".fb-comments").length){
$('#fb_comments_' + uid).append(commentBox);
}
$('#fb_comments_' + uid).toggle();
.length將返回與DOM中的選擇器匹配的元素的實例數。由於0在JavaScript中等於false,因此我們可以將它視爲條件中的布爾值。
這工作,但如果我點擊鏈接上的所有頁面加載之前,它不什麼都不做。那很奇怪... – Santiago
爲什麼使用附加而不是切換可視性? – deltree
@deltree我認爲最好不要加載所有的(我有很多與個人評論條目)Facebook的評論框。我只是想加載點擊... – Santiago
然後通過AJAX加載它們,並且div應該仍然是可見或不可見的基於切換,而不是由AJAX調用 – deltree