问题描述
我有一个简单的wordpress导航栏,我想在其中添加一个tel:
链接以自动调用公司的网站。
由于在导航栏中存储<a>
链接存在数百万个问题,我选择了<button>
并添加了JS代码来执行重定向。
document.querySelector('.btn--call').addEventListener('click',function () {
window.open('tel:' + this.innerText,'_self'); //same effect for using `_system`)
});
问题是当我单击该按钮时,我被重定向到电话页面,但我拨打的电话为空。
检索到的变量是正确的,因为控制台日志记录this.innerText
会打印期望值。
这个问题也不在网站上,因为我在其他地方还有一个<a href="tel:...>
,而且它的作用就像是一种魅力。
我尝试使用window.location.href='tel:' + this.innerText;
,但是效果是一样的。
有什么方法可以使数字正确解析而不必将其更改为<a>
?
任何帮助都会得到很大的帮助。
解决方法
尝试一下,它是通过目标而不是事件处理程序上的this
访问元素。
document.querySelector('.btn--call').addEventListener('click',function (e) {
location.href = 'tel:' + e.target.innerText;
});