ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript アプリケーションにおける IE と Firefox の互換性に関するディスカッション_JavaScript スキル

JavaScript アプリケーションにおける IE と Firefox の互換性に関するディスカッション_JavaScript スキル

WBOY
リリース: 2016-05-16 19:05:26
オリジナル
1023 人が閲覧しました
1.document.formName.item("itemName") 問題

注: IE では、document.formName.item("itemName") または document.formName.elements [ "elementName"]; Firefox では、document.formName.elements["elementName"] のみを使用できます。
解決策: document.formName.elements["elementName"] を一律に使用します。 2. コレクション オブジェクトに関する問題

説明: IE では、() または [] を使用してコレクション オブジェクトを取得できますが、Firefox では、[] を使用してのみコレクション オブジェクトを取得できます。解決策: コレクション オブジェクトを取得するには、一律に [] を使用します。

3. カスタム属性の問題


注: IE では、通常の属性を取得する方法を使用できます。カスタム属性 属性を取得するには、getAttribute() を使用することもできます。Firefox では、getAttribute() を使用してカスタム属性を取得することもできます。
4.eval("idName") の問題


説明: IE では、eval("idName") または getElementById("idName") を使用して、ID が次の HTML オブジェクトを取得できます。 idName; Firefox では、idName の HTML オブジェクトを取得するには getElementById("idName") のみを使用できます。
解決策: idName の HTML オブジェクトを取得するには、getElementById("idName") を使用します。 🎜>5. 変数名が HTML オブジェクトの ID と同じである問題


説明: IE では、HTML オブジェクトの ID を直接使用できます。 Firefox では、ドキュメントの下位オブジェクトの変数名として使用できますが、IE では同じ変数名を使用できません。
解決策: document.idName の代わりに document.getElementById("idName") を使用します。エラーを減らすために、変数を宣言するときは常に var を追加してください。
6.const の問題


説明: Firefox では定数を定義するために const キーワードまたは var キーワードを使用できますが、IE では var キーワードのみを使用できます。
解決策: var キーワードを使用して定数を定義します。
7. input.type 属性の問題


説明: IE での input.type

8.window.event の問題

説明: window.event は読み取り専用です。
解決策:
IE:


コードをコピーします

コードは次のとおりです: ...


IE&Firefox:



コードをコピー

コードは次のとおりです: ...

9.event.x およびevent.y の問題

説明: IE では、even オブジェクトには x、y 属性がありますが、その下に pageX、pageY 属性はありません。 Firefox では、偶数オブジェクトには pageX、pageY 属性がありますが、x、y 属性はありません。
解決策: IE では、event.x または Firefox の代わりに mX (mX =event.x ?event.x :event.pageX;) を使用します。 event.page オブジェクトには target 属性がありますが、srcElement 属性はありません。
解決策: IE のevent.srcElement またはevent.target の代わりに obj (obj =event.srcElement ?event.srcElement :event.target;) を使用します。 Firefox。

11.window.location.href の問題


説明: IE または Firefox2.0.x では、window.location または window.location を使用できます。 href; Firefox1 .5.x では、window.location のみを使用できます。

の代わりに window.location を使用します。ウィンドウの問題

注: IE では、モーダルおよび非モーダル ウィンドウは showModalDialog および showModelessDialog を通じて開くことができますが、Firefox では開くことができません。
解決策: window.open(pageURL,name,parameters;) を使用します。 ) 新しいウィンドウを開きます。子ウィンドウのパラメータを親ウィンドウに渡す必要がある場合は、子ウィンドウで window.opener を使用して親ウィンドウにアクセスできます。例: var parWin = window.opener.getElementById("Aqing) ").value = "Aqing";

13.フレームの問題

次のフレームを例に挙げます:


(1) フレーム オブジェクトにアクセスします: IE: このフレーム オブジェクトにアクセスするには、window.frameId または window.frameName を使用します。Firefox: このフレーム オブジェクトにアクセスするには window .frameName のみを使用できます。
さらに、IE と Firefox の両方で window.document.getElementById("frameId") を使用してこのフレーム オブジェクトにアクセスできます。

(2) フレームの内容を切り替える:
IE と Firefox の両方で、window.document.getElementById("testFrame").src = "xxx.html" または window.frameName.location = "xxx.html" を使用できます。

フレーム内のパラメータを親ウィンドウに戻す必要がある場合は、 frme のparentを使用して親ウィンドウにアクセスできます。例:parent.document.form1.filename.value="Aqing";


14.body の問題


Firefox の body タグがブラウザによって完全に読み取られません。

は入力する前に存在しますが、IE の本体はブラウザーによって body タグが完全に読み取られた後に存在する必要があります。例:
Firefox:

コピーcode


コードは次のとおりです。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート