Chrome 113版本Click To Call功能失效问题解决咨询
Chrome 113+ 点击拨号(Click To Call)功能失效修复方案
问题背景
一年前开发的点击拨号功能曾兼容所有浏览器,Chrome升级至113版本后该功能失效。目前点击邮件(Click To Email)功能正常,仅Chrome中点击拨号无法使用,Firefox和IE仍可正常运行。涉及代码示例:
<a href="tel:+9052355">Phone 1</a> <a href="tel:9052355">Phone 2</a>
修复方案
- 检查Chrome协议处理设置:Chrome 113+ 调整了tel协议的默认处理逻辑。进入Chrome设置,搜索“处理协议”,找到tel相关选项,确认设置为允许系统默认应用处理,而非阻止。
- 标准化tel链接格式:统一使用带国家码的E.164标准格式,比如
tel:+9052355,确保号码格式符合规范,避免新版本Chrome的格式校验拦截。 - 添加JavaScript兜底逻辑:如果默认href触发失效,通过自定义点击事件强制触发拨号行为:
document.querySelectorAll('a[href^="tel:"]').forEach(link => { link.addEventListener('click', function(e) { e.preventDefault(); const telNumber = this.href.replace('tel:', ''); window.location.href = `tel:${telNumber}`; }); });
- 排除外部干扰:在Chrome无痕模式下测试,排查是否有广告拦截、隐私类浏览器扩展拦截了tel协议请求;同时检查页面内其他JS代码是否阻止了a标签的默认点击行为。
内容的提问来源于stack exchange,提问作者Keval Patel
相关产品推荐
相关产品推荐

