次に、たとえば、新しい要素を作成しようとしています
new Element('div',{'class':'name'});
すべてのブラウザーは、クラス "name" を持つ新しい要素を作成します。しかし、Internet Explorer 9 および 10 では、これを取得しました。
<div className="name"></div>
ご覧のとおり、クラスの代わりに className 属性を作成します。どうすればこれを修正できますか?
次に、たとえば、新しい要素を作成しようとしています
new Element('div',{'class':'name'});
すべてのブラウザーは、クラス "name" を持つ新しい要素を作成します。しかし、Internet Explorer 9 および 10 では、これを取得しました。
<div className="name"></div>
ご覧のとおり、クラスの代わりに className 属性を作成します。どうすればこれを修正できますか?
//This generates 'className':
var popoutControl = new Element('div', {'class':'mySuperCoolClassName'});
// Break the line up into two lines.
// The following will generate a 'class' attribute instead:
var popoutControl = new Element('div');
popoutControl.className = 'mySuperCoolClassName';
ここで私の答えを見てください:
https://stackoverflow.com/a/20668126/1274995
基本的に、これらのバージョンの IE では Prototype 1.6 にバグがあります。プロトタイプを更新する必要があります。問題は、Element._attributeTranslations.write に含まれる翻訳リストです。
これはPrototype 1.7のリストです(そしてそれ以上だと思います)
古いバージョンの IE で動作したと思います (おそらく IE9 より前のバージョンでした)。
交換
new Element('div',{'class':'name'});
と
var mydiv = new Element('div');
mydiv.addClassName('name');
http://prototypejs.org/api/element/classNames Elementから提案されているとおり。ClassName ('名前'); Element を使用する必要があります。addClassName ()。