如何确定不支持html5移动设备的浏览器位置?

时间:2014-06-27 08:32:50

标签: html5 geolocation

我有一个html5网页,根据移动设备的地理位置显示特定广告。

如何从(旧)浏览器中确定手机上不支持html5(较旧的nokias和blackberrys)的位置?

2 个答案:

答案 0 :(得分:0)

您必须使用Geo :: IP等库,根据IP地址对服务器端进行操作。它的准确性要低得多(特别是在移动设备的情况下),但如果浏览器没有给你一个位置,就无法猜测它。

答案 1 :(得分:0)

我假设您可以在网页中使用Javascript。 您可以使用geopoition.js后备技术。还提供特定于设备的解决方案。

因此,您可以从检测HTML5支持开始(而不是假设)

if (Modernizr.geolocation) {
// let's find out where you are!
} else {
// no native geolocation support available :(
// try geoPosition.js or another third-party solution
}

您可以从cdn资源中包含Modernizr库     <script src="modernizr.min.js"></script> 现在使用地理位置,您可以解决方法。 这是github的例子 在头部

<script src="js/geoPosition.js" type="text/javascript" charset="utf-8"></script>

然后这样称呼

<script type="text/javascript">
if(geoPosition.init()){  // Geolocation Initialisation
        geoPosition.getCurrentPosition(success_callback,error_callback,{enableHighAccuracy:true});
}else{
        // You cannot use Geolocation in this device
}
geoPositionSimulator.init(); 

// p : geolocation object
function success_callback(p){
    // p.latitude : latitude value
    // p.longitude : longitude value
}

function error_callback(p){
    // p.message : error message
}

您可以参考以下可能对您有用的资源

检测地理位置:http://diveintohtml5.info/detect.html#geolocation 使用Geoposition:github.com/estebanav/javascript-mobile-desktop-geolocation 黑莓的特定资源:tonybunce.com/2008/05/08/Blackberry-Browser-Amp-GPS.aspx

希望这可能会有所帮助