2013-09-27 47 views
0

我正在嘗試創建新元素併爲該元素添加類。Prototype.js在ie9中返回className而不是類

new Element('div',{'class':'name'}); 

其他瀏覽器返回

<div class="name"></div> 

IE9返回

<div className="name"></div> 

我們怎樣才能修復的prototype.js這個問題

+1

如何創建新的元素,並添加一個類呢? – Thilo

+0

我已經在'new Element('div',{'class':'name'})格式下創建了一個新元素;' –

+0

我無法複製您的問題。 'className'是保存應用於Element對象中元素的類的對象屬性 - 您是否混淆了2? –

回答

0

更換

new Element('div',{'class':'name'}); 

var mydiv = new Element('div'); 
mydiv.addClassName('name'); 
+0

這些是相同的,元素構造函數在創建元素時在幕後做同樣的事情 –

+0

你試過了嗎?根據幾個來源,這些都不相同,這解決了一些IE問題。 – Reeno

0

版本您使用的是越野車在IE9(沒有測試IE的其他版本,也沒有原型的其他版本除了下面的)。我建議你更新Prototype。在控制檯中進行測試(F12工具):

Version 1.7: 
    (new Element('div', {className: 'buggy'})).outerHTML 
     returns "<div class="buggy"></div>" 

    (new Element('div', {class: 'buggy'})).outerHTML 
     returns "<div class="buggy"></div>" 

Version 1.6.0.3: 
    (new Element('div', {className: 'buggy'})).outerHTML 
     returns "<div className="buggy"></div>" 

    (new Element('div', {class: 'buggy'})).outerHTML 
     returns "<div className="buggy"></div>" 

(很抱歉的響應晚了,我剛剛在IE9調試此)

相關問題