2013-04-02 62 views
0

新元素不起作用。有人有任何線索爲什麼? CSS:Mootools新元素不起作用

#tileNode { 
position:absolute; 
width:100px; 
height:100px; 
background-color:red; 
} 

JS:

window.addEvent('domready', function() { 
var newElement = new Element('div',{id:"tileNode"}); 
newElement.inject($$('div#tileNode')); 
alert($$('#tileNode').get('id')); 
}); 

警報#root工作正常,所以它的存在...創建tileNode元素不起作用提醒它也不起作用:/

類問候!

+1

'newElement.inject($(「根」));'如果你用id「根」在div注入,也必須在注入單元素,使用$('id'),因爲$$返回一個數組... – Romain

+0

這就是它的xD thx! – marius

+1

我已經把它作爲答案,你可以標記它回答下一個! ;) – Romain

回答

-1

你也可以用它來注入:

newElement.inject($$('div#tileNode')[0]); 
+0

當你尋找一個獨特的元素時,創建一個元素數組沒有任何意義! '$('tileNode')'更準確,更易於理解和更優化! – Romain

1

使用

newElement.inject($('root')); 

如果與ID「根」在div注入,也必須在一個單一的元素注入,使用$(「身份證」),因爲$$返回數組...

0

有在你的代碼幾件事情,把我的注意: 拳頭,new Element('div',{id:"tileNode"})完全等於new Element('div[id=tileNode]')。既然選擇什麼方式沒有區別,我會推薦第二種形式,因爲它更具可讀性。你甚至可以添加更多的屬性,如Element('div[id=tileNode][class=tile]')等,而不是傳遞一個對象。

如果您試圖通過其ID獲取元素,則可以使用dollar function進行優化。所以如果你想提醒一個元素的ID,嘗試使用alert($('tileNode').id)。 儘管警報可能正常工作,但您可以嘗試使用JavaScript控制檯。而不是alert(myVar)使用console.log(myVar)

希望這有助於和快樂編碼:)