我有一個對象,X和一些創建div並分配id = X.ID的代碼。創建HTML之後,我的對象分配到div,像這樣:Javascript將新屬性添加到元素
document.getElementById(X.ID).XValue = X;
如果我設置語句後休息一下,我可以evaulate document.getElementById(X.ID).XValue
看到X.
雖然所有屬性我創建了HTML,我加onmouseup="MOUSE_UP(event)".
var aProp = {};
aProp.ThisValue = "This";
aProp.ThatValue = "That";
aProp.Id = 5;
var html = '<div id="' + aProp.Id + '"';
var func = 'MOUSE_UP';
html += ' onmouseup="' + func + '(event) ">';
html += '</div>';
document.getElementById("test").innerHTML += html;
document.getElementById(aProp.Id).XVALUE = aProp;
function MOUSE_UP(event) {
alert(event.currentTarget.XValue.ThisValue);
}
現在,當我設置爲MOUSE_UP休息,event.currentTarget是我的div(event.currentTarget.id == X.ID
),但event.currentTarget.XValue是不確定的。
爲什麼XValue在此之前定義時未定義?
你的意思是'onmouseup =「MOUSE_UP(event)」'?額外的單引號可能會丟掉東西... –
你可能會覺得這很有用:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty –
這是粗略的你在做什麼?因爲它似乎工作。 http://jsfiddle.net/jeffman/6whJ3/ – 2013-08-02 22:29:13