У меня есть карта страны в Рафаэле Дж.С., путь каждой провинции имеет уникальный идентификатор, который является названием провинции.
Образец:
var Cabinda=rsr.path("m 60.0241,346.7668 10.2951,8.3215 -8.5072,3.0892
-5.4582,7.1326 -8.2951,4.6265 3.0526,3.8057 -0.7677,19.9354 -10.5567,1.3151
-2.2395,-5.147 3.0053,-4.8937 -3.8053,-10.4264 -4.068,-5.8434 6.2945,-8.8999
5.1218,-0.0768 1.934,-5.6738 7.8199,-1.4295 z").attr( {
id: 'Cabinda', parent: 'angola', fill: 'none', stroke: '#000000', "stroke-
opacity": '1', 'stroke-width': '2'
}).transform("m0.98965296,0,0,0.87648538,-3.2175615,-286.00894").data('id',
'Cabinda');
Каждая из этих провинций находится в массиве с именем subDivs
:
var subDivs=[Cabinda];
subDivs.push( CuandoCubango, Moxico, Namibe, etc... );
У меня есть цикл for, в котором есть события mouseover и mouseout для каждой из провинций:
for(var subName in subDivs) {
(function (sub) {
sub.attr(style);
var subdivId = subName.id;
sub[0].addEventListener("mouseover", function() {
sub.animate(hoverStyle, animationSpeed);
document.getElementById("showname").innerHTML = subdivId;
}, true);
sub[0].addEventListener("mouseout", function() {
sub.animate(style, animationSpeed);
document.getElementById("showname").innerHTML = '';
}, true);
})(subDivs[subName]);
}
У меня на карте вверху есть элемент #showname
, на котором я хочу отображать название каждой провинции, когда она находится над ней. До сих пор я пытался добавить эти две строки, но он не показывает идентификатор провинции - он отображается в div #nameshow как «undefined».
var subdivId = subName.id;
document.getElementById("showname").innerHTML = subdivId;