このコードでは、json 配列から派生した配列を反復処理しようとしています。ページ内に SVG があります。国をクリックすると、名前が URL に送信されます。残念ながら、 -->error で示されている行で次のエラーが発生します
キャッチされていない TypeError: null のメソッド 'addEventListener' を呼び出せません
どうすればこのエラーを克服できますか?? そして、なぜそれが起こっているのですか?
配列は次のようになります。
{"Countries":["india","switzerland","usa","alaska","germany","austria","netherlands","france","italy","spain","poland","hungary","czech","romania","russia","china","mexico","brazil","britain","thailand","sweden","uae","new_zealand_north_island","new_zealand_south_island","egypt"]}
var mySVG = document.getElementById("VectorMap");
var svgDoc;
mySVG.addEventListener("load", function () {
svgDoc = mySVG.contentDocument;
$.getJSON("http://www.someurl.com/jsonArray",
function (data) {
$.each(data, function (index, item) {
var i=0;
for (tot=item.length; i < tot; i++) {
var someElement = svgDoc.getElementById(item[i]);
//--->error
someElement.addEventListener("mousedown", function () {
$("#info").html(ajax_load).load("http://www.someurl.com/returnData"+"?country="+text);
}, false); //add behaviour
}
});
});
}, false);