我对 JQuery Slider 和 Google Fusion Table 有一点问题。这是一个谷歌地图应用程序。我在 Fusion Table 中存储了几个位置,它们将在地图初始化期间显示在地图上。当然,这不是很有趣,所以我想添加一个 JQuery Slider,以便通过设置事件回调函数,当用户与滑块交互时,地图上出现的位置可以动态变化。但是,即使使用以下代码,滑块也不会移动,这应该非常简单。
我所做的只是初始化地图和滑块。在slider的回调函数中有两行,第一行在网页上显示slider的当前值,范围为0到100;第二行再次查询融合表以反映更新的数据(这里我只是将查询简化为它只是选择所有条目并将它们发送回,因此即使与滑块交互,地图上显示的数据也不会改变)。
在 Chrome 中,我得到的是地图初始化成功,显示了所有数据点。但是,当我尝试移动滑块时,它只是停留在那里,但滑块的值(第 1 行显示的内容)确实发生了变化。但是,如果我注释掉第 2 行,一切都很好,滑块可以自由移动,虽然不发送任何查询...
有没有人有同时使用 Maps、fusion table 和 JQuery 滑块的经验?任何建议表示赞赏。
下面是代码:
// initialize map
function initialize() {
var place = new google.maps.LatLng(30, -120);
map = new google.maps.Map(document.getElementById('map_canvas'), {
center: place,
zoom: 4,
mapTypeId: 'terrain'
});
var layer = new google.maps.FusionTablesLayer('132848');
layer.setMap(map);
}
// define the JQuery Slider
$(function(){
$('#slider').slider({
max: 100,
min: 0,
step: 1,
value: 0,
slide: function(event, ui) {
document.getElementById("slider-value").innerHTML = ui.value + " mi";// line 1
layer.setQuery('select Location from 132848');// line 2
}
});
});