【问题标题】:Hiding or removing empty text nodes ( ) in Internet Explorer that render as "ì"在 Internet Explorer 中隐藏或删除呈现为“ì”的空文本节点 ( )
【发布时间】:2012-12-02 15:27:01
【问题描述】:

我在后端使用 Joomla CMS 为客户创建了一个网站。我有一个问题,当最终用户编辑一些文章时,它会在图像标签之前插入一个空格,然后 IE 将其解释为一个空文本节点。这在 IE 以外的任何浏览器中都不是问题。

IE 将这些空文本节点显示为小的“i”类型字符,但带有重音符号。

我已经验证了标记,除了由于最终用户编辑的内容而导致奇怪的缺失 alt 标签之外,标记很好。

我认为尝试查找和更改后端所见即所得编辑器功能并非易事,因此我想尝试让 IE 忽略这些前导空格。有没有办法在 Javascript 中做到这一点?

编辑 为了澄清......这是最终用户插入一些图像后的一些标记:

<div class="before-after">
<p>BEFORE<br /> <img src="/images/before-after/Arm%20before%20treatment.jpg" border="0" width="170" height="205" style="border: 0;" /></p>
<p>AFTER 3 TREATMENTS<br /> <img src="/images/before-after/Arm%20after%203%20treatments.jpg" border="0" width="170" height="205" style="border: 0;" /></p>
</div>

除了 img 标签前的前导空格外,我看不到任何字符。在 IE 中,此空间显示为 ì

网站在这里: http://www.radiantliving.co.uk/laser-tattoo-removal

【问题讨论】:

  • "IE 将这些空文本节点显示为小的 "i" 类型字符,但带有重音符号。" 这些不是 文本节点,然后,他们有一些字符。
  • 它将前导空格显示为“i”字符...在 IE 的开发工具中,它显示为空文本节点。
  • @Faldinio:对不起,我不相信会是这样。开发工具向您显示错误的可能性更多

标签: javascript jquery html css internet-explorer


【解决方案1】:

似乎空格是&amp;nbsp;(没有中断空格字符)。您可以使用以下 javascript 代码删除它们:

$(function(){
     var scope = $("#article");
     scope.html(scope.html().replace(/&nbsp;/g,''));
});

scope 更改为您想要的任何父元素。它现在正在查看 #article 元素的所有子元素。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多