我使用一個簡單的腳本重新加載一個divFacebook like button在使用load()刷新div後不顯示;
$('#mydiv').fadeOut('300').load('# #mydiv').fadeIn("300");
的問題是,我重裝div有Facebook的喜歡裏面的按鈕。在DIV重新加載後,我可以在源代碼中看到它已更新,但由於某種原因該按鈕被隱藏。
有什麼辦法強制按鈕重新繪製?
我使用一個簡單的腳本重新加載一個divFacebook like button在使用load()刷新div後不顯示;
$('#mydiv').fadeOut('300').load('# #mydiv').fadeIn("300");
的問題是,我重裝div有Facebook的喜歡裏面的按鈕。在DIV重新加載後,我可以在源代碼中看到它已更新,但由於某種原因該按鈕被隱藏。
有什麼辦法強制按鈕重新繪製?
facebook按鈕不會顯示,因爲它只是在document.load之後配置。
如果在文檔已經加載並且Facebook javascript SDK已經初始化時加載div內容。它不會工作。
如果facebook不是必需的,直到div加載。您可以嘗試在div中加載「all.js」腳本。
否則,如果你有這個想法,你一定要檢查應用程序的設計。
多次嵌入JS SDK不是一個好主意。爲了重新解析XFBML標籤,'FB.XFBML.parse'是指定的方法。 – CBroe
正如我在我的評論說,我認爲.load
被誤解,因爲你在你的問題說
我可以看到它的源裏面更新,但按鈕被隱藏某種原因
..所以,考慮到這一點,我假設你有正確的參數加載功能。
你在這裏有一個同步問題。您在鏈中使用的所有內容都使用時間表,並且就是異步的。
因此,不必只是鏈接所有東西,而是必須使用回調來了解特定函數的時間尺度何時結束。
$('#myDiv').fadeIn('300', function() {
// callback when #myDiv is faded out (display:none;)
$(this).load('url', function() {
// callback when #myDiv is loaded with new content from the given 'url'
$(this).fadeIn('300');
})
});
我剛剛在網站上試過這個。它似乎打破了我用來完全隨機化帖子的按鈕。 我使用的代碼是: 功能nextPost() { $( '#myDiv')淡入( '300',函數(){$ (本).load( 'randompost.php',函數(){ $(this).fadeIn('300'); }) }); } –
以及函數nextPost()如何被調用?在'$(document).ready()'中還是等價的? – dbf
(只是在這裏集思廣益)嘗試在.load的回調函數中調用FB.init(),看看會發生什麼。 –
'load('##mydiv')'是一個錯字嗎?你認爲'.load()'是否適用於'##myDiv'? – dbf
這不是一個錯字。我發現把它簡單地#myDiv不會刷新我的PHP包含(使用WordPress生成一個隨機文章),而是產生它在頁面第一次加載時繪製的相同隨機文章。 –