我找到了一些选项,但没有一个比向页面添加 META 标记更简单或干净(微软绝对应该给我们一个选项)。
选项 #1:在您的电话号码中插入标记
在电话号码中间添加诸如空白SPAN 之类的内容足以使 Lync 无法检测到。这是一个高度手动的选项,因为它要求您编辑页面上的每个电话号码。但它可以很方便地禁用页面上的一两个数字,同时允许检测到任何其他数字。
<p>For help, please call 1-<span></span>800-555-1234.</p>
选项 #2:脚本去掉额外的标记
Lync 似乎以一种非常可预测的方式格式化电话号码。它使用(据我所知)一致的类名将SPAN 包裹在号码周围,然后附加一个包含拨号图标的A 锚。
<!-- Lync formatting -->
<p>For help, please call
<span class="baec5a81-e4d6-4674-97f3-e9220f0136c1" style="white-space: nowrap;">
1-800-555-1234
<a title="Call: 1-800-555-1234" style="...">
<img title="Call: 1-800-555-1234" src="data:image/png;base64,..."/>
</a>
</span>
.</p>
鉴于用于类名的非常独特的 Guid,您可以使用自己的客户端脚本定位它并将其隐藏或执行任何操作。隐藏所有 Lync 图标的 jQuery 方法可能如下所示:
$("span.baec5a81-e4d6-4674-97f3-e9220f0136c1 > a").hide();
更新!选项 #2a:样式化掉额外的标记
使用与上面脚本示例相同的技术,您可以使用 CSS 简单地设置有问题的锚标记。这应该比基于脚本的解决方案更可取。
span.baec5a81-e4d6-4674-97f3-e9220f0136c1 > a {
display: none !important;
}
选项 #3:使用TEL 锚作为先发制人的打击
有一个standardized way 来标记电话号码,以便与 VOIP/拨号程序兼容。它使用带有tel: 协议的标准A 锚。这具有双重效果,不仅可以禁用 Lync 的侵入式标记,还可以为任何知道如何拨打号码 (Skype) 和移动设备(iOS 和 Android)的设备提供更好的支持。
<p>For help, please call <a href="tel:1-800-555-1234">1-800-555-1234</a>.</p>
现在 Lync 用户仍然可以单击该链接,这将提示他们使用 Lync“打开”它,无论他们使用什么浏览器(我已确认与 IE9、Firefox 和 Chrome 兼容)。这给我的印象是两全其美:与用户的电话应用程序兼容,而不会影响您的所有标记和布局。
在 Microsoft 提出 META 标签来解决这些问题之前,我们选择了 #3。
更新:合并了 suggestion from @marsman57 以改进 CSS 选项 #2