【发布时间】:2010-09-05 23:34:17
【问题描述】:
我正在尝试使用jQuery 来格式化代码块,特别是在<code> 标签内添加<pre> 标签:
$(document).ready(function() {
$("code").wrapInner("<pre></pre>");
});
Firefox 正确应用格式,但 IE 将整个代码块放在一行。如果我添加警报
alert($("code").html());
我看到IE在pre标签中插入了一些额外的文字:
<PRE jQuery1218834632572="null">
如果我重新加载页面,jQuery 后面的数字会改变。
如果我使用wrap() 而不是wrapInner() 将<pre> 包装在<code> 标记之外,IE 和Firefox 都可以正确处理它。但是<pre> 不应该在内部 <code> 工作吗?
我更喜欢使用wrapInner(),因为我可以在<pre>标签中添加一个CSS类来处理所有格式,但如果我使用wrap(),我必须将页面格式CSS放在@987654336中@标签和<code>标签中的文本/字体格式,或者Firefox和IE都窒息。没什么大不了的,但我想让它尽可能简单。
有没有其他人遇到过这种情况?我错过了什么吗?
【问题讨论】:
标签: javascript jquery html internet-explorer