我不明白为什么这不起作用。我的桌面上有一个 test.htm 文件,如下所示:
<html><head>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
tex2jax: {inlineMath: [["$","$"],["\\(","\\)"]]}
});
</script>
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML-full"></script></head>
<body>
This is $x^2$
</body></html>
我有一个 WebView 正在通过我的桌面加载它
[[webView mainFrame] loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"file:///Users/john/Desktop/test.htm"]]];
效果很好。页面加载,MathJax javascript 运行,$x^2$ 变成了一个很好的排版数学脚本。
但是,如果我尝试这样做:
[[webView mainFrame] loadHTMLString:@"<html><head><script type=\"text/x-mathjax-config\">MathJax.Hub.Config({tex2jax: {inlineMath: [[\"$\",\"$\"],[\"\\\\(\",\"\\\\)\"]]}});</script><script type=\"text/javascript\" src=\"http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML-full\"></script></head><body>This is $x^2$</body></html>" baseURL:[NSURL URLWithString:@"file:///"]];
在换行符被杀死并且\'s被替换为“\”和“'s被替换为'\”'之后加载完全相同的网页,JavaScript无法运行,我只看到纯文本This is $x^ 2$ 没有通过 MathJax 呈现 $x^2$。
是否有一些秘密,“没有真正的 webview,请为我执行 javascript”命令,我错过了?