【问题标题】:Prevent skype highlighting from corrupting textareas防止 Skype 突出显示损坏文本区域
【发布时间】:2010-11-24 16:41:08
【问题描述】:

简而言之,一个以编程方式填充了电话号码的文本区域,并安装了 Skype 插件,会生成突出显示的标签。

因此,

(418) 555-1234

变成

begin_of_the_skype_highlighting (418) 555-1234 end_of_the_skype_highlighting

如果 那个 字符串被放在 textarea 中,Skype 突出显示将再次封装它无限

你如何防止这种情况发生?

【问题讨论】:

  • 卸载 Skype 插件不是一个选项?我一直讨厌它将常规数字转换为链接。
  • @moontear:我希望是这样,但我不能阻止人们安装它。

标签: html textarea skype


【解决方案1】:

你应该看看http://forum.skype.com/index.php?showtopic=96959&st=0

看起来这是一个报告的错误,但直到现在才解决。

建议使用元标记(这似乎适用于所有 Skype 插件

<meta name="SKYPE_TOOLBAR" content="SKYPE_TOOLBAR_PARSER_COMPATIBLE" />

引入一个不可见的字符,该字符将破坏用于识别电话的 Skype 算法

+123 456<span style="display:none;">_</span> 789

不认为这可以与 textareas 一起使用

当然,如果问题在于您自己对该页面的访问,请禁用该插件。


更新

检查http://www.jsfiddle.net/gaby/Qy7uw/ 中的两个示例中的任何一个是否有效。 (我没有 Skype 可以查看

我正在使用零宽度连接器 &amp;zwj; 和熟悉的 &amp;nbsp;

【讨论】:

  • 愚蠢的 Skype。这太烦人了——它应该遵循一些标准来识别电话号码(比如tel:xxxx),并让其余的内容保持独立(会+1但没有投票)
  • 你在 textarea 上是对的,不能在里面放一个 span。但是对于元标记,它实际上是相反的,它启用突出显示(对于未来的 Skype 插件,一旦它们到达那里),而不是阻止它,对吗?
  • @MPelletier,看forum.skype.com/index.php?showtopic=78380skype.otherlinks.co.uk/page.asp?id=toolbar_number_formatting据此,只有包含在评论标签中的数字(具有特定规则)才会突出显示&lt;!-- sphoneid --&gt;&lt;!-- sphoneid --&gt; .
  • 感谢您的宝贵时间。显然,最新的工具栏没有 textareas 并且不再把它们弄乱了。在这个过程中我发现了一些其他的东西。
【解决方案2】:

仅使用 CSS,可以通过覆盖 Skype 使用的样式来删除它。尝试将这两行添加到您的样式表中:

span.skype_pnh_container {display:none !important;}
span.skype_pnh_print_container {display:inline !important;}

edit Skype 已开始为课程添加唯一编号,您可以使用新的 Css 3 选择器解决它:

span.skype_pnh_container {display:none !important;}
span.skype_pnh_print_container, span[class^="skype_pnh_print_container"] {display:inline !important;} 

【讨论】:

  • 使用样式删除它不再是一种选择,因为它们会为容器类生成随机盐,如 skype_pnh_container_12345
  • @Timo:我相信 Eduardo 的更新 (CSS3) 应该可以解决这个问题(后面的规则匹配以 skype_pnh_print_container 开头的类样式),你试过了吗?
  • 是的,我似乎已经很奇怪地错过了它,可惜没有 CSS2 解决方案。我使用 SKYPE_TOOLBAR 元标记来解决它。实际上,我在某个网页上的 Paul Irish 的一些帖子中看到了您的第一个解决方案,现在看来它已经过时了。
【解决方案3】:

丑陋的 hack,还没有尝试过,但是进入 textarea 的文本可能会在每个可打印字符之间生成一个不可打印字符。可能会损坏特殊编码...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-20
    • 2014-05-29
    • 1970-01-01
    • 2010-09-13
    • 2021-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多