Javascript jQuery.getScript在移动设备上不工作
Javascript jQuery.getScript在移动设备上不工作,javascript,jquery,Javascript,Jquery,$。getScript即使在移动设备已连接internet的情况下也不工作。 我们如何为下面的代码编写jquery.getscript?我无法在脚本中加载我的url,因为如果移动设备没有internet,我的应用程序将不会启动,所以如果internet连接可用,我希望包含我的url。有人能帮我更正代码吗 if (states[networkState] == 'No network connection') { // Device with no network data connect
$。getScript
即使在移动设备已连接internet的情况下也不工作。
我们如何为下面的代码编写jquery.getscript?我无法在脚本中加载我的url,因为如果移动设备没有internet,我的应用程序将不会启动,所以如果internet连接可用,我希望包含我的url。有人能帮我更正代码吗
if (states[networkState] == 'No network connection') {
// Device with no network data connection
document.getElementById("location").innerHTML = "Location unavailable";
} else {
// code for getting current address using Lat/Longs
$.getScript("https://maps.googleapis.com/maps/api/js?sensor=true", function () {
var geocoder;
geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(latitude, longitude);
geocoder.geocode({
'latLng': latlng
}, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[0]) {
var add = results[0].formatted_address;
document.getElementById("location").innerHTML = "Location : " + add;
} else {
document.getElementById("location").innerHTML = "No Results found ";
}
} else {
//document.getElementById("location").innerHTML="Geocoder failed due to: " + status;
alert("Geocoder failed due to: " + status);
}
});
});
}
更新:
实际上,这里底部的东西是行不通的。谷歌是聪明的…回应是空的,但他们更聪明。。。如果您查看他们的API文档,您会发现它们允许您在请求中指定回调。所以你会这样做:
jQuery('body').append('<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&callback=address"/>')
jQuery('body')。追加(“”)
注意对callback=address
这个故事的寓意是读API文档:D
我假设了但没用的东西:
它失败了,因为有些东西还没有定义。但是,如果查看返回的脚本,您将看到它正在从另一个脚本动态创建脚本标记(是的)
你可以:
$.getScript()
回调中加载该脚本,然后在该回调中调用地址函数
因为上面的URL可能是动态生成的,所以您可能希望使用正则表达式来解析第一个getScript响应,然后从该响应中提取URL用于回调。你应该考虑使用<代码> $.Ajax < /C> >而不是<代码> $.GETScript < /Cord>。这样你就可以使用<代码> Cache < /Cult>结果,否则它将使用一个随机数来重新请求脚本,每次都是新的。 networkState
是一个变量吗?如果它是一个数组键,您可以像states.networkState
或states['networkState']
那样引用它。states['networkState']没有问题。这是互联网连接状态。我的问题是$.getScript()函数。请建议我如何在代码中使用$.getScript()。到底是什么问题?您是否收到“地理编码器失败”警报?它有什么作用吗?它不是只在移动设备上工作,还是在桌面浏览器上都不工作?控制台中是否有错误?您的getScript()
函数运行良好@KawineshSK您的意思是,如果您删除了几乎所有内容,该函数将正常工作?感谢您的回复。你能举个例子吗。