Javascript 如何使用传单GeoJson选项
我现在正试图用传单来实现纽约市的一个合唱团。我一直在关注这一点,直到我到达“添加交互”部分,一切都很顺利。当我尝试添加mouseover函数或任何其他函数时,我无法定义Javascript 如何使用传单GeoJson选项,javascript,jquery,ruby-on-rails,ruby,leaflet,Javascript,Jquery,Ruby On Rails,Ruby,Leaflet,我现在正试图用传单来实现纽约市的一个合唱团。我一直在关注这一点,直到我到达“添加交互”部分,一切都很顺利。当我尝试添加mouseover函数或任何其他函数时,我无法定义e,我的chrome控制台抛出此Uncaught TypeError:Cannot read属性“setStyle”of undefinederror 这就是我添加highlightFeature作为onEachFeature L.geoJson(geoJsonZipCode, {style: style, onEachFeatu
e
,我的chrome控制台抛出此Uncaught TypeError:Cannot read属性“setStyle”of undefined
error
这就是我添加highlightFeature
作为onEachFeature
L.geoJson(geoJsonZipCode, {style: style, onEachFeature: highlightFeature}).addTo(map);
这是要调用的两个函数,style可以正常工作,但highlightFeature不能:
function style(feature) {
return {
fillColor: getColor(feature.properties.density),
weight: 1,
opacity: 1,
color: 'white',
dashArray: '3',
fillOpacity: 0.7
};
}
function highlightFeature(e) {
var layer = e.target;
layer.setStyle({
weight: 5,
color: '#666',
dashArray: '',
fillOpacity: 0.7
});
if (!L.Browser.ie && !L.Browser.opera) {
layer.bringToFront();
}
}
在您正在学习的教程的“添加交互”部分下,
highlightFeature
被附加到hover
事件的侦听器上:一个单独的onEachFeature
函数可以执行此操作。只要密切遵循本教程中的技巧,就可以避免这个问题。我添加了这一点,但仍然不起作用。Chrome抛出了我以前使用过的变量现在未定义的错误,我猜超出了范围。当我重新定义它们时,它会从传单库中抛出关于未定义变量的错误代码>来自文档。准备好修复它。我不知道为什么,但当我在控制台中调用它时,它就工作了。