我正在使用一个简单的脚本来重新加载div
$('#mydiv').fadeOut('300').load('# #mydiv').fadeIn("300");
问题是我正在重新加载的div里面有像Facebook一样的按钮。 DIV重新加载后,我可以在源代码中看到它更新,但是按钮因某种原因被隐藏了。
有没有办法强制按钮重新绘制?
答案 0 :(得分:2)
正如我在评论中所述,我认为.load
被误解了,正如你在问题中所说的那样
我可以看到它在源内更新了,但是按钮因某种原因被隐藏了
..所以考虑到这一点,我假设您使用正确的参数加载功能。
这里有同步问题。您在链中使用的所有内容都使用时间刻度,.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');
})
});
答案 1 :(得分:0)
facebook按钮不会显示,因为它只是在document.load后正常配置。
如果您在文档已加载且Facebook javascript SDK已初始化时加载div内容。它不起作用。
如果不需要facebook,则加载div。您可以尝试在div中加载“all.js”脚本。
否则,如果你已经达到这个目标,你肯定要审查应用程序的设计。