我正在一个有很多MathML的网站上工作,正如您从示例中看到的那样,仅查看代码就很难猜测渲染公式的垂直尺寸,而无需先渲染它。
<math display="block"> <mrow> <msub> <mi>a</mi> <mn>0</mn> </msub>
<mo>+</mo> <mfrac><mn>1</mn> <mstyle scriptlevel="0" displaystyle="true"> ...
另一方面,在构建页面的过程中,浏览器似乎清楚地“知道”了垂直维度。
有没有办法让我在 Javascript/jQuery 中获取有关呈现的HTML 表达式大小的信息,以便我可以相应地调整任何包含框的尺寸?
再解释一下,如果我渲染“纯文本”,我可以通过计算“行”的数量来估计垂直尺寸——但显然这很老套,而且对于我感兴趣的情况没有用。
jQuery(this).find('span').each( function(){
if ($(this).css('display') != 'none'){
// count the number of lines in this span
num_lines += Math.ceil(jQuery(this).text().length/84);
max_lines = Math.max(max_lines,num_lines);
}
}