2

我有一个项目需要<a href="tel:123456">通过电话号码(123456 不是电话号码)但是这将导致除移动浏览器之外的所有问题,因为无法解释该tel:位。

当浏览器宽度<1000px时,我尝试使用jQuery添加href attr,但这是一种非常不可靠的方法(平板电脑的分辨率也有限)。

任何关于如何克服这一点的想法将不胜感激。我正在使用 PHP、jQuery 和 JavaScript。

4

4 回答 4

3

如果它是移动代理,请使用 PHP 检测: http ://www.000webhost.com/forum/scripts-code-snippets/27404-php-extremely-simple-way-check-if-mobile-browser.html

   <?php
        if(strstr(strtolower($_SERVER['HTTP_USER_AGENT']), 'mobile') || strstr(strtolower($_SERVER['HTTP_USER_AGENT']), 'android')) {
           echo '<a href="tel:123456">';
        }else{
           echo 'You are not in a mobile';
        }
   ?>
于 2013-01-22T10:31:57.510 回答
2

由于您使用的是 PHP,我可以推荐php-mobile-detect类。您可以迎合单个设备/操作系统/浏览器,或者简单地使用isMobile()isTablet()作为包罗万象的。

我通常会这样做:

include './includes/Mobile_Detect.php';
$detect = new Mobile_Detect;

if ( $detect->isMobile() or $detect->isTablet() ){
    $phone='<a href="tel:+12345678910">1-234-567-8910</a>';
} else {
    $phone='1-234-567-8910';
}

然后我就<?php echo $phone;?> 在我需要的任何地方,它都能奏效!并且通过使用 PHP 而不是 javascript 这意味着检测是在服务器端完成的,因此最终用户需要下载的东西更少(如 jQuery 和额外的脚本)。

设备库会经常更新,因此每隔一段时间检查一下GitHub 页面是值得的。

于 2013-08-14T16:36:39.750 回答
1

您想检测用户是否有移动浏览器?这可能会有所帮助:

http://jquerybyexample.blogspot.com/2012/03/detect-mobile-browsers-using-jquery.html

于 2013-01-22T10:30:32.530 回答
-1

试试下面这个:

语法:调用

<a href="callto://9566603286">9566603286</a>

 <?php
    if(strstr(strtolower($_SERVER['HTTP_USER_AGENT']), 'mobile') || strstr(strtolower($_SERVER['HTTP_USER_AGENT']), 'android')) {
       echo '<a href="callto://9566603286">9566603286</a>';
    }else{
       echo 'You are not in a mobile';
    }
 ?>
于 2014-06-19T11:57:23.340 回答