我正在使用Cufon.replace
来替换网站上的某些文字。目前在IE8标准模式下,当它在$(文档).ready之外运行时,它只发生了大约50%的时间,其余的时间发生了DOM更改(使用开发工具栏中的IE8查看)但没有文本是显示。
禁用替换,并通过控制台手动应用它会正确更新所有文本。
将它包装在$(document).ready
中会阻止它发生 - 没有DOM修改(据我从dev工具栏中可以看出)。但是我无法从控制台手动重新应用 - 所以它可能对我撒谎。
将其包含在$(window).load
中似乎与$(document).ready
请注意这只影响ie8“标准模式”。它在Firefox和IE7中运行良好。
有什么想法吗?
答案 0 :(得分:1)
我以前经历过这个...我会将它包装在匿名函数中,你也可以使用一个简单的setTimeout来延迟它(可能不需要)。
(function( $ ){
// Your Cufon.replace()
Cufon.replace('h1', { fontFamily: 'stack-overflow', hover: true });
Cufon.now();
// OPTIONAL - Delay by 150ms (you can experiment with this value)
setTimeout(function(){ Cufon.refresh(); }, 150);
})( jQuery );