Php 如何删除Skype电话号码识别?
如果安装了Skype,在某些浏览器中,手机号码会显示Skype图标 我永远不想在任何地方显示Skype图标 是否有任何JavaScript或PHP函数可以处理此问题 浏览器上的电话号码显示为skype图标 不,他们不是。某些浏览器可能对此具有特定功能。或者,它可以由服务于该页面的站点来实现。在前者的情况下,您需要提供哪个浏览器的详细信息,而且它可能无法从服务器端控制Php 如何删除Skype电话号码识别?,php,javascript,html,Php,Javascript,Html,如果安装了Skype,在某些浏览器中,手机号码会显示Skype图标 我永远不想在任何地方显示Skype图标 是否有任何JavaScript或PHP函数可以处理此问题 浏览器上的电话号码显示为skype图标 不,他们不是。某些浏览器可能对此具有特定功能。或者,它可以由服务于该页面的站点来实现。在前者的情况下,您需要提供哪个浏览器的详细信息,而且它可能无法从服务器端控制 C.卸载Skype并查看其是否发生更改 Skype通常与您的浏览器交互,并为电话号码添加自己的格式。这是您浏览器的Skype插件。
C.卸载Skype并查看其是否发生更改
Skype通常与您的浏览器交互,并为电话号码添加自己的格式。这是您浏览器的Skype插件。当您安装skype软件时,它会自动为firefox和IE AFAIK添加该插件
只要删除插件或软件,你就可以开始了。无论如何,您网站的访问者可能已经安装了该软件。使用以下CSS防止skype格式化您页面上的数字:
span.skype_pnh_container {display:none !important;}
span.skype_pnh_print_container {display:inline !important;}
编辑
Skype开始在类名中添加数字以使其唯一。您可以使用新的Css选择器来解决此问题
span.skype_pnh_container {display:none !important;}
span.skype_pnh_print_container, span[class^="skype_pnh_print_container"] {display:inline !important;}
加上这个
<meta name="SKYPE_TOOLBAR" content ="SKYPE_TOOLBAR_PARSER_COMPATIBLE"/>
在谷歌搜索了这个问题的答案后,随着2012年的临近,这个问题似乎依然存在。显然,
标签不再有效,Skype插件与以往一样具有侵入性,在某些情况下会破坏SKU和零件号(错误地将其解释为电话号码)
我很惊讶地看到,这么多人误解了从web开发人员的角度禁用此功能的愿望,并提供了通过更改浏览器设置等方式关闭此功能的解决方案。当然,我们不能期望我们的用户这样做
Skype将采用以下方式:
555-555-5555
begin_of_the_skype_highlighting 555-555-5555 end_of_the_skype_highlighting
把它变成这样:
<span class="skype_pnh_print_container">
555-555-5555
</span>
<span class="skype_pnh_container" dir="ltr">
<span class="skype_pnh_mark"> begin_of_the_skype_highlighting</span>
<span class="skype_pnh_highlighting_inactive_common" title="Call this phone number in United States of America with Skype: +15555555555" dir="ltr">
<span class="skype_pnh_textarea_span"><span class="skype_pnh_text_span">555-555-5555</span>
</span>
</span>
<span class="skype_pnh_mark">end_of_the_skype_highlighting</span>
</span>
很糟糕,而且没有确切的方法来阻止它。处理这种入侵的方法是使用javascript删除标记
使用jQuery的示例:
window.setTimeout(function() {
// Remove the class from the wrapper <span> Skype adds to the number
$('.skype_pnh_print_container').removeClass('skype_pnh_print_container');
// Remove the generated content from Skype
$('.skype_pnh_container').remove();
}, 100); // If it doesn't work, set a higher value
window.setTimeout(函数(){
//从Skype添加到号码的包装中删除该类
$('.skype\u pnh\u print\u container')。removeClass('skype\u pnh\u print\u container');
//从Skype中删除生成的内容
$('.skype_pnh_container')。删除();
}, 100); // 如果不起作用,请设置一个更高的值
你首先会看到一个丑陋的闪光点,但是设置超时是必要的,因为Skype内容是在页面加载之后生成的。我按照hans的建议尝试了(更新的)css,但在最新版本的Chrome(17.0.963.78 m)中不起作用
skype插件似乎又变了,因为skype生成的代码(在我的Chrome版本中)与Madmartigan显示的代码不同
我试着在我的电话号码中间加上一个注释:
例如:
这很有效。我不知道有任何PHP或JavaScript代码可以从电话号码中删除Skype图标: 但有几种方法可以阻止Skype突出显示(即删除Skype图标)电话号码: 从开发人员的角度来看,您可以:
有关更多详细信息,请查看参考资料:以下是必须在代码中实现的步骤 步骤1: 将元标记和样式添加到页面标题中
span.skype\u pnh\u容器{显示:无!重要;}
span.skype\u pnh\u print\u容器{显示:内联!重要;}
步骤2:
将您的号码包装在
内,如:
123-123-1234
这对我很有用。:) 无需任何复杂操作,只需进入浏览器->互联网选项->程序->管理加载项,找到Skype,单击呼叫,然后禁用它
就这样 是的,我也这么做-讨厌那样。对我来说很好。这应该是真正正确的答案;dr:这个答案很糟糕:点击调用插件仍然通过插入跨距来修改DOM,这可能会对CSS和$()选择器产生副作用。此外,点击通话功能仍然可以工作(在我们的情况下,我们肯定不希望这样,因为它将成本中心代码检测为电话号码-arrgh)。此外,使用CSS是脆弱的-如果他们将来更改插件,您的修复程序将中断。这对Opera Mobile没有帮助,Opera Mobile使一些数字变为蓝色并可单击,例如
123.45
。欢迎使用Stack Overflow!虽然一个链接理论上可以回答这个问题,但你应该,并提供链接供参考(就像你在编辑后所做的那样)。你的原始答案只是有一个链接,这就是为什么它被删除的原因。可惜这个解决方案太难看了。一些较新的客户端更改了类名。除了上面的优秀答案之外,您还需要添加:$('.skype_c2c_print_container').removeClass('skype_c2c_print_container')$(“.skype_c2c_容器”).remove();这是可行的,这种方法唯一的问题是它会阻止手机上的电话号码被检测到。因此,不幸的是,网络开发者被Skype/Microsoft的一些白痴程序员劫持了,他们有一个愚蠢的想法,用他们可点击的数字这一丑陋的怪物来改变页面上的html。笨蛋。你可以将你的电话号码包装在一个“tel:”命令中,使其在手机上可点击。例如,这是StackOverflow,一个编程网站。这个问题是从编写网站而不是运行浏览器的角度提出的,所以你希望每个interweb用户在loadi之前都能处理好这个问题
555<!--stop skype -->-555-5555
555­-555-5555