【问题标题】:Cufon + jQuery messes up on IECufon + jQuery 在 IE 上搞砸了
【发布时间】:2012-05-01 18:30:21
【问题描述】:
我对此很陌生,我真的没有解决方案。
现在我正在定制一个 Opencart 主题以满足我的需求。
这是网站:http://lasarito.ro/lenjerie-de-pat。
它在 Chrome 和 FF 上运行完美,但 IE 却把一切都搞砸了。
在我的研究中,我了解到嵌入在 jQuery 中的 sizzle 库与 Cufon 不是朋友,所以我想这就是为什么 IE 会抛出一堆 javascript 错误并弄乱渲染。
另一个我无法理解的问题是为什么当我使用 firebug 显示 HTML 时,一切都搞砸了,css 和 js 包含在正文部分而不是在源代码中出现的头部。
有什么想法吗?
谢谢
【问题讨论】:
标签:
jquery
internet-explorer
cufon
sizzle
【解决方案1】:
在我从事的一个项目中,我在 jQuery 的文档就绪事件处理程序中添加了 Cufon.replace 调用。我会试试看:
$(document).ready(function () {
Cufon.replace('h1,.name, h2,.box .box-heading', { fontFamily: 'Josefin Sans Std Light' });
Cufon.replace('.price-range', { fontFamily: 'Helvetica CE 55 Roman' });
});
在 Cufon 之前包含 jQuery 并且 jQuery 已经完成加载是至关重要的。 Cufon 依赖于 jQuery 的选择器引擎来提供选择器,而不仅仅是标记名(即类、id 等)。我发现旧版浏览器(
您可以尝试的另一件事是第 4 步 https://github.com/sorccu/cufon/wiki/Usage:
第 4 步 – 让 Internet Explorer 正常运行
不幸的是,Internet Explorer 仍然存在一个问题。多数情况
在这种情况下,在文本被替换之前会有一个短暂但可见的延迟。
您可以通过插入以下 sn-p right 来避免此问题
在结束标记之前(或在任何外部脚本之前,例如
谷歌分析):
<script type="text/javascript"> Cufon.now(); </script>