这里我漏掉了什么?这看起来很简单,但我搞不懂为什么第二个警告显示var id为“未定义”
<input type='button' class='getLoc' id=‘s13' value=‘s13’>
<script>
$(function(){
$('.getLoc').click(function(){
var id = $(this).attr('id');
alert(id); //<-- shows s13
navigator.geolocation.getCurrentPosition(function(position,id){
var lat = position.coords.latitude;
var lon = position.coords.longitude;
alert(lat+","+lon+","+id); //<-- shows undefined for id
});
});
});
</script>发布于 2015-12-18 02:46:23
这是因为您将id作为参数包含到回调函数中。这是您的alert()将引用的id,由于只有一个参数被传递给回调,因此值为undefined。
它应该只是
navigator.geolocation.getCurrentPosition(function(position){https://stackoverflow.com/questions/34342003
复制相似问题