我们的产品被许多公司和政府机构使用 其中许多只允许使用IE,并且已经对其IE应用了安全策略,不允许对其进行调整。
其中一个设置是禁用下载网络字体。
我们已经到位处检查是否可以下载字体
如果没有,我们会使用<i>
替换页面上的所有<img>
。
var haveFont = detectFontIcons();
//Iterate over each icon on the page and replace if necessary
if (!haveFont)
$('[class^="mce-i-"]').each( function(e) {
console.log("Found element = ", this);
// Replace all <i></i> with <img>
....
}
}
这适用于我们所有的自定义Html。
问题:
出于某种原因,它不适用于tinyMCE <i>
标签
我已经调整了课程前缀以允许使用TinyMCE 'mce-i-'
它在'mce-i'
的DOM中找不到任何元素,即使我可以使用firebug看到它们。
我甚至在调用时设置了超时来执行此检查,这是因为尚未完全呈现DOM的问题。没有运气。
问题:
1:关于为什么没有找到TinyMCE元素的任何想法?
2:如何更新tinyMCE直接使用图像而不是网络字体?
谢谢
答案 0 :(得分:1)
我不能相信这一点,但我找到了一个无字体的自定义皮肤,用图像替换字体。我添加了皮肤,更新了我的init方法,它看起来像我希望的那样工作。
可以在这里找到: - https://pollyshaw.wordpress.com/2014/02/03/a-font-free-skin-for-tinymce-version-4/ - https://bitbucket.org/pollyshaw1/tinymce-4-lightgray-no-fonts-skin