我有一个带有mathml的页面要由mathjax处理。我注意到每次访问页面(不仅仅是第一次)时,我都看到相同的处理:
...waiting for cdf.mathjax.org
...processing math...
...typesetting math 5% 10% 20%....我原以为,一旦页面第一次加载,然后下一次访问,它将立即出现,因为它现在在浏览器缓存。但我想我的理解是错的。
页面的标题是
<!DOCTYPE html>
<html>
<head><title>integrals 51 - 100</title>
<meta charset="UTF-8" />
<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<link rel="stylesheet" type="text/css" href="report.css" />
<script type="text/x-mathjax-config"> MathJax.Hub.Config({ extensions: ["tex2jax.js"], jax:
["input/TeX", "output/HTML-CSS"], tex2jax: { inlineMath: [ ['$','$'], ["\\(","\\)"] ],
displayMath: [ ['$$','$$'], ["\\[","\\]"] ], processEscapes: true },
"HTML-CSS": { availableFonts: ["TeX"] } }); </script> <script type="text/javascript"
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script><style type="text/css"> .MathJax_MathML {text-indent: 0;}
</style></head>
<body>我的问题是:它应该是这样工作吗?我不会强迫页面重新加载,比如按住SHIFT键并重新加载页面。我只需访问页面,点击浏览器返回键,然后再点击链接再次访问页面。
我在firefox 34.0.05和Chrom上试过这个。我在windows 7上。
发布于 2015-01-05 08:22:47
那么,mathjax格式的方程是由javascript生成的。每次重新加载页面时,都会重新运行javascript。为了防止每次运行这个javascript,您需要某种缓存解决方案,需要后端中复杂的代码。缓存结果存在问题,因为并非所有浏览器都是相同的,字体大小可能不同,实际窗口大小可能会有所不同。所有这些都会影响到所生成方程的精确细节。
人们一直在维基百科上开发一个缓存的mathjax解决方案,但结果仍然不如在飞行中生成的结果。
https://stackoverflow.com/questions/27775541
复制相似问题