我有一個小問題。我正在使用一個帶有JQuery插件JPList的谷歌地圖,該插件可以對一些結果進行一些過濾和排序。javascript問題可能衝突
如果我爲jplist插件刪除了一些jquery,則onclick方法在google地圖上工作,但只要我將jplist代碼放回到地圖中,click就停止工作。
我沒有得到JS錯誤,我真的很努力去達到它的底部。
什麼是最好的診斷方法?知道如何解決這個問題真的很有用。
感謝任何幫助。
感謝
var infowindow = new google.maps.InfoWindow();
var myOptions = {
zoom: 4,
center: new google.maps.LatLng(-40.900557, 174.885971),
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true
};
var icon = "img/marker.png";
var icons = {
'dflt': "img/marker.png",
'selected': "img/white-marker.png"
};
var seletedMarker = null;
$(function() {
var map = new google.maps.Map(document.getElementById("map"), myOptions);
// grab data attributes from html
$('.row').each(function(index){
var rLat = $(this).data("coordinates").lat;
var rLng = $(this).data("coordinates").lng;
var rTitle = $(this).find('.itemtitle a').html();
var rTel = $(this).find('.tel').html();
var rAdd = $(this).find('.add').html();
var contentString = '<div style="text-align:left"><h4 style="color:#0068a6;font-size:16px;margin:0px 0px 10px 0px;">' + rTitle + '</h4><strong>' + rTel + '</strong><br /><br />' + rAdd + '</div>';
var myLatLng = new google.maps.LatLng(rLat, rLng);
var otherMarkers = new google.maps.Marker({
position: myLatLng,
map: map,
icon: icons.dflt,
title: rTitle
});
// click actions
google.maps.event.addListener(otherMarkers, 'click', (function(otherMarkers, index) {
return function() {
if (seletedMarker) {
seletedMarker.setIcon(icons.dflt); //revert seletedMarker's icon to .dflt
}
infowindow.setContent(contentString);
otherMarkers.setIcon(icons.selected); //Set marker's icon to .seleted
infowindow.open(map, otherMarkers);
seletedMarker = otherMarkers; //Remember the currently selected marker so it can be reverted to default next time round.
}
})(otherMarkers, index));
**/* this is what doesnt work */**
$(this).click(function(){
google.maps.event.trigger(otherMarkers ,'click')
});
});
**/* this is what stops it working */**
$('#dynamiclist').jplist({
items_box: '.results',
item_path: '.row',
panel_path: '.panel',
items_per_page: '4000',
//checkbox filters
control_types: {
'cb_filters': {
class_name: 'control_checkbox_filters'
,options: {}
},
'reset': {
class_name: 'control_reset'
,options: {}
}
}
});
});
理查德
請顯示一些代碼,以便我們可以看到你在做什麼。否則,打開瀏覽器開發工具(F12)並使用JS控制檯。 – zzzzBov 2013-03-05 20:36:29