[英]MathJax: works in desktop browsers, but only when faking user-agent; works on mobile browsers
因此,我有此页面(属于Wordpress博客的一部分), http://gnuradio.org/blog/filtering-time-series-data__elemental-building-blocks/ ,其中应包含我的LaTeX公式的渲染图喜欢:
当我配置桌面的Firefox假装其用户代理是在Android上运行的Firefox时,它的功能相同(有效!)
可悲的是,在不强迫我的Firefox声称其用户代理字符串是iPhone 3的情况下,该公式从未被渲染过。 MathJax展示了它是典型的“初始化消息”,但是在这些消息出现很久之前,“原始” LaTeX公式就消失了,并且永远不会再呈现:
现在,奇特的事情是:它在Linux下的Chrome上也不起作用,我有一个朋友报告了Safari / OS X的相同问题,但是在Android设备上的Firefox,它的工作原理很吸引人 。
因此,我尝试调试东西,但是我没有超出以下范围:
Hub
的Queue
也无济于事。 根本不是一名网络开发人员,这几乎是我所学的范围。 因此,同样欢迎您使用有关戳戳/调试该问题的提示或解决我的问题的明确答案。
问题是您的页面正在加载用于修改页面中脚本元素的代码( http://gnuradio.org/cdn-cgi/nexp/dok3v=1613a3a185/cloudflare/rocket.js
,名称为cloudflarejs-rocketloader-0.11.5
文件中的cloudflarejs-rocketloader-0.11.5
可能是cloudflare在您不知情的情况下自动添加了此内容,但结果是页面中的脚本元素不再是浏览器实现的标准脚本DOM元素,而是由该脚本实现的替换。不幸的是,替换的行为与原始脚本元素不同,这导致MathJax无法读取数学运算(该数学运算存储在页面内的脚本元素中)。
您可能可以通过添加
<script>
MathJax = {
AuthorInit: function () {
MathJax.HTML.getScript = function (node) {return node.textContent}
}
};
</script>
到加载MathJax.js本身的脚本之前的页面。
或者,尝试禁用完整的CloudFlare优化 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.