我有以下javascript功能
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// device APIs are available
//
function onDeviceReady() {
// navigator.geolocation.getCurrentPosition(onSuccess, onError);
/ navigator.geolocation.getCurrentPosition(onSuccess);
}
// onSuccess Geolocation
//
function onSuccess(position) {
var element = document.getElementById('geolocation');
element.innerHTML = + position.coords.latitude + ',' + position.coords.longitude;
}
// onError Callback receives a PositionError object
//
function onError(error) {
alert('code: ' + error.code + '\n' +
'message: ' + error.message + '\n');
// }
</script>
我需要添加gelocation元素值,这是一个long / lat例如&#34; -27.49256565,153.095735&#34;到我的jquery移动列表中的超链接
$("#homePage").live("pageshow", function() {
console.log("Getting remote list");
var s = "";
s+= "<li><a href='bus1.html?coords='> bus 1 locator</a></li>";
s+= "<li><a href='bus2.html?coords='> Bus 2 locator </a></li>";
s+= "<li><a href='bus3.html?coords='> Bus3 locator </a></li>";
$("#home").html(s);
$("#home").listview("refresh");
});
上面的href代码工作正常但是我需要将值geolocation元素填充到coords =的值中,因此coords是动态的。
简单地将我需要的更改放到上面的代码行中,以便coords = value从函数中动态填充
我需要将地理位置值动态加载到值coords =附加到a href
我已经花了好几个小时,我知道我非常接近但不在那里
任何帮助将不胜感激
答案 0 :(得分:0)
也许您想查看document.location.search种可能性中的查询字段,然后使用以下内容:
function onSuccess(position) {
var element = document.getElementById('geolocation'); // I assume this is the <a>-element that has to get the URL with that specific coordinates
element.setAttribute('href',
'<your base url>?' + 'coordx=' + position.x +
'&coordy=' + position.y); // I assume you want your URL set here.
}
在一些公开可用的代码的帮助下,检索这些值也非常简单:
function getURLParam (str, sVar) {
return decodeURI(str.replace(new RegExp("^(?:.*[&\\?]" + encodeURI(sVar).replace(/[\.\+\*]/g, "\\$&") + "(?:\\=([^&]*))?)?.*$", "i"), "$1"));
} // this can be found (edited) at MDN (Mozilla Developers Network)
var coordx = getURLParam(window.location.search, 'coordx');
var coordy = getURLParam(window.location.search, 'coordy');
使用此功能,您可以将您的变量输入和输出网址,我认为这是您的问题。如果不是,请将您的问题更具体一些,并更清楚您的问题。