H5页面唤起手机拨打电话(拨号)

html-css015

H5页面唤起手机拨打电话(拨号),第1张

在移动端页面开发中,偶尔会需要唤起用户手机的打电话功能,拨打客服电话,此时我们可以按照以下操作实现打电话功能:

1)index.html在<head></head>中加入这一段:

<meta name="format-detection" content="telephone=yes"/>

2)js中设置点击事件:

window.location.href = 'tel:4000-000-000'

或者直接使用:

<a href="tel:4000-000-000">拨打电话</a>

若涉及到发送短信可以设置:

// 添加内容

window.location.href = 'sms:10086?body=短信内容'

// 不添加内容

window.location.href = 'sms:10086'

或者:

<a href="sms:10086">发送短信</a>

<a href="sms:10086?body=短信内容"></a>

文章参考: https://blog.csdn.net/Boale_H/article/details/108582436

解决方法

1、scrollIntoView(alignWithTop): 滚动浏览器窗口或容器元素,以便在当前视窗的可见范围看见当前元素。

2、alignWithTop 若为 true,或者什么都不传,那么窗口滚动之后会让调用元素的顶部与视口顶部尽可能平齐。

3、alignWithTop 若为 false,调用元素会尽可能全部出现在视口中,可能的话,调用元素的底部会与视口顶部平齐,不过顶部不一定平齐。

4、该方法是唯一一个所有浏览器都支持的方法,类似还有如下方法,但是只有在Chrome和Safari有效。

5、代码如下:

6、再次测试,效果如下:

7、相比于input被挡住,突兀地出现在页面中间更加可以令人接受,但是多次测试,仍然存在问题:当切换输入法的时候,input框的位置会往下移动,被键盘挡住一部分,而且出现的概率比较高(中英文切换),效果如下:

8、当软键盘被唤起是,使用 scrollTop() 方法使input元素滚动到指定的位置,但是滚动的具体数值需要调试才能给出,所以这里就不再演示了。