141

字符代码 (HTML) 是​什么?我在我的一个 jQuery 脚本中找到了它,并想知道它是什么..

谢谢。

编辑:

这是它所在的脚本(它被添加到最后,在 Firebug 中找到它)

<script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script>
<script type="text/javascript">
var $jnyh = jQuery.noConflict();


$jnyh(function() {
    $jnyh("#title-nyh").click(function() {
      $jnyh(".show-hide-nyh").slideDown("slow");
    }, function() {        
      if(!$jnyh(this).data('pinned'))
        $jnyh(".show-hide-nyh").slideUp("slow");
    });
    $jnyh("#title-nyh").click(function() {
    $jnyh(this).parent().toggleClass("title-btm-brdr");
       $jnyh(this).toggleClass("chev-up-result");
      var pin = $jnyh(this).data('pinned');
      $jnyh(this).data('pinned', !pin);
      if(pin) $jnyh(".show-hide-nyh").slideUp("slow");      
    });
});​&amp;#8203;
</script>
4

8 回答 8

172

它是Unicode 字符 '零宽度空间' (U+200B)

该字符用于换行控制;它没有宽度,但它在两个字符之间的存在并不能防止在对齐时增加字母间距

根据给定的代码示例,在这种情况下,实体完全是多余的。它必须是偶然插入的,很可能是由错误的编辑器尝试使用空白或突出显示进行智能操作,或者最终用户使用本机使用该字符的键盘语言,例如阿拉伯语。

于 2010-06-04T11:37:45.383 回答
22

如果要在编辑器中搜索这些不可见字符并使它们可见,可以使用正则表达式搜索非 ascii 字符。尝试搜索[^\x00-\x7F]. 在 IntelliJ IDEA 中测试。

于 2016-04-08T09:04:59.620 回答
7

我带着同样的问题来到这里,然后自己解决了。这个奇怪的字符出现在我的 HTML 中。

问题很可能是您的代码编辑器。我使用 Espresso,有时会遇到这样的问题。

要修复它,只需突出显示受影响的代码,然后转到菜单并单击“转换为数字实体”。你会看到这个字符的数值出现;只需删除它,它就永远消失了。

于 2013-06-03T01:10:07.933 回答
3

ZERO WIDTH SPACE.

我已将其用作“空”表格单元格的内容。不过,不知道它在<script>标签中做了什么。

于 2010-06-05T00:59:11.863 回答
3

当您使用 jQuery 使用 .before() 和 .after() 等 DOM 操作函数添加元素时,将插入零宽度空格字符

在我的文档末尾添加隐藏的模态对话框框架时,我遇到了这个问题,然后发现零宽度空间搞砸了那里的布局,增加了不需要的空间。

快速解决方法是将其插入页脚之前,而不是之后。反正它是隐藏的。

我在 jQuery 中找不到任何这样做的东西:

https://github.com/jquery/jquery/blob/master/src/manipulation.js

所以它可能是添加它的浏览器。

于 2013-02-21T12:41:31.893 回答
3

如果您在来源中看到这些内容,请注意可能是有人试图对文本文档进行指纹识别以揭示谁在泄露信息。这也可能是通过使相同的外观信息在逐字节级别上有所不同来绕过垃圾邮件过滤器的尝试。

如果您有兴趣了解更多信息,请参阅我关于减轻指纹识别的文章。

于 2018-05-19T14:36:22.520 回答
2

我让这些角色出现在我不希望它们的脚本中。我注意到它破坏了我的 HTML/CSS 视觉格式:它创建了一个新的文本框。

很确定一个有问题的编辑器正在添加它们......我怀疑 Mac 的 Komodo Edit,就我而言。

于 2011-06-08T20:30:42.717 回答
0

它显示了一些奇怪的字符(​),直到我在 html 文件的头部将字符集设置为 UTF-8

<meta http-equiv="content-type" content="text/html; charset=UTF-8">

或者对于 HTML5:

<meta charset="UTF-8">

它现在是透明的,但在我使用检查器时仍显示在 html 中。

从页面中删除所有脚本也没有删除它。

我测试了它的 chrome 和 IE。

于 2017-04-08T05:04:15.883 回答