我有一种效果,当你将它们中的任何一个悬停时,我想要发生在所有3个不同的元素上,但是我在将变量组合在一起时遇到了麻烦,所以它们都可以起到相同的作用
我写的代码是我认为将它们组合在一起的代码。
var germany=new Array();
germany[0]=germany1_poly;
germany[1]=germany2_poly;
germany[2]=germany3_poly;
google.maps.event.addListener(germany, "mouseover",function() {
germany.setOptions({ fillColor: "#ff0000", strokeColor: "#ff0000" });
});
答案 0 :(得分:3)
var i;
for(i = 0; i < germany.length; i++){
google.maps.event.addListener(germany[i], "mouseover",function() {
germany.setOptions({ fillColor: "#ff0000", strokeColor: "#ff0000" });
});
}
答案 1 :(得分:0)
如果我正确地阅读了您的问题,您希望在其中任何一个上观察鼠标悬停时更新所有三个区域。 这是一些应该有用的咖啡因,下面是相应的javascript。
CoffeeScript的:
germany = [
germany1_poly
germany2_poly
germany3_poly
]
areas_effect = (areas) ->
for area in areas
area.setOptions({ fillColor: "#ff0000", strokeColor: "#ff0000" })
areas_observer = (areas) ->
for area in areas
google.maps.event.addListener(area, "mouseover", areas_effect(areas))
areas_observer(germany)
javascipt的:
var areas_effect, areas_observer, germany;
germany = [germany1_poly, germany2_poly, germany3_poly];
areas_effect = function(areas) {
var area, _i, _len, _results;
_results = [];
for (_i = 0, _len = areas.length; _i < _len; _i++) {
area = areas[_i];
_results.push(area.setOptions({
fillColor: "#ff0000",
strokeColor: "#ff0000"
}));
}
return _results;
};
areas_observer = function(areas) {
var area, _i, _len, _results;
_results = [];
for (_i = 0, _len = areas.length; _i < _len; _i++) {
area = areas[_i];
_results.push(google.maps.event.addListener(area, "mouseover", areas_effect(areas)));
}
return _results;
};
areas_observer(germany);