IE および Firefox で互換性のある JavaScript 記述方法のまとめ_javascript スキル
1. IE の input タグの id 属性はデフォルトで name 属性と同じであることがわかりますが、Firefox では id 属性の名前を明確に書かないと id 属性が使用できません。
例:
次のコードは IE では実行できますが、Firefox では実行できません:
次のコードに変更する必要があります:
以下は再現されます: 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 idName を持つ HTML オブジェクトを取得できますが、Firefox ではのみ可能です。 idName の ID を持つ HTML オブジェクトを取得するには、getElementById("idName" ) を使用します。
解決策: idName の ID を持つ HTML オブジェクトを取得するには、一律に getElementById("idName") を使用します。変数名が HTML オブジェクトの ID と同じです 問題
説明: IE では、HTML オブジェクトの ID をドキュメントの下位オブジェクトの変数名として直接使用できます。 Firefox では、HTML オブジェクト ID と同じ変数名を使用できますが、IE では使用できません。
解決策: document.idName の代わりに document.getElementById("idName") を使用します。エラーを減らすために、変数を宣言するときは常に var を追加してください。
6.const の問題
説明: Firefox では定数の定義に const キーワードまたは var キーワードを使用できますが、IE では定数の定義に var キーワードのみを使用できます。解決策: var キーワードを一律に使用して定数を定義します。
7. Input.type 属性の問題
説明: IE の input.type 属性は読み取り専用です。 Firefox での読み取りと書き込みの場合。
8.window.event の問題
説明: window.event は IE でのみ実行できますが、Firefox では実行できません。これは、Firefox のイベントが実行できるためです。イベントが発生するオンサイトで使用されます。Firefox はパラメーターを渡すためにソースからイベントを追加する必要があります。 Ie はこのパラメータを無視し、window.event を使用してイベントを読み取ります。 解決策:
IE&Firefox: Submitted(event)"/> …
window.open("b.html","","modal=yes,width = 500,height=500,resizable=no,scrollbars=no");
9.event.x およびevent.y の問題
説明: IE では、偶数オブジェクトには x、y があります。属性はありますが、pageX、pageY 属性はありません。Firefox では、偶数オブジェクトには pageX、pageY 属性がありますが、x、y 属性はありません。解決策: mX (mX =event.x ?event.x :event. pageX; ) を使用してイベントを置き換えます。;Firefox では、even オブジェクトには target 属性がありますが、srcElement 属性はありません。 IE または Firefox のevent.target でのevent.srcElement イベント
11.window.location.href issue
の互換性の問題にも注意してください: IE または Firefox2.0 の場合.x の場合は、window.location.href を使用できます。Firefox1.5.x では、window.location のみを使用できます。
解決策: window.location.href の代わりに window.location を使用します。 🎜>12. モーダル ウィンドウと非モーダル ウィンドウの問題
説明: IE では、showModalDialog と showModelessDialog を使用してモーダル ウィンドウと非モーダル ウィンドウを開くことができます。解決策: を使用します。 window.open(pageURL,name direct ,parameters) して新しいウィンドウを開きます。 子ウィンドウのパラメーターを親ウィンドウに戻す必要がある場合は、子ウィンドウで window.opener を使用してアクセスできます。例: var parWin = window.opener; parWin.document .getElementById("Aqing").value = "Aqing";
13.フレームの問題
例:
(1) フレーム オブジェクトへのアクセス:
IE: このフレーム オブジェクトにアクセスするには、window.frameId または window.frameName を使用します。frameId と FrameName は同じ名前にすることができます。
Firefox: このフレーム オブジェクトにアクセスするには window.frameName のみを使用できます。さらに、IE と Firefox の両方で window.document.getElementById("frameId") を使用できます。 >( 2) フレームの内容を切り替える:
両方の IE でフレームを切り替えるには、window.document.getElementById("testFrame").src = "xxx.html" または window.frameName.location = "xxx.html" を使用できます。 フレーム内のパラメータを親ウィンドウ (オープナーではなく親フレームであることに注意してください) に渡す必要がある場合は、 frme のparentを使用して親ウィンドウにアクセスできます。例:parent.document.form1.filename.value="Aqing";
14.body の問題
ブラウザが body タグを完全に読み取る前に Firefox の本体が存在します。
IE の body タグが完全に読み取られた後に存在する必要があります。
IE: document.body.onload = inject;
Firefox: document.body.onload = inject();
16. Firefox と IE の親要素 (parentElement) の違い
IE: obj .parentElement
firefox: obj.parentNode
解決策: firefox と IE は両方とも DOM をサポートしているため、obj.parentNode を使用することは良い選択です。 Firefox はハンドをサポートしていませんが、IE はポインタをサポートしています
解決策: ポインタを一律に使用します
18. innerText は IE では正常に動作しますが、innerText は FireFox では動作しません。
解決策:
if(navigator.appName.indexOf("Explorer") > -1){ document.getElementById('element').innerText = "私のテキスト"; } else{
document.getElementById('element').textContent = "my text"; }
19. FireFox で HTML タグのスタイルを設定する場合、すべての位置とフォント サイズの値の後には px が続く必要があります。このieもサポートされています。
20. IE、Firefox、およびその他のブラウザーでは、table タグに対する操作が異なります。IE では、js を使用して tr を追加する場合、appendChild メソッドは機能しません。
解決策:
//テーブルに空の行を追加します: var row = otable.insertRow(-1);
var cell = document.createElement("td"); cell.innerHTML = " ";
cell.className = "XXXX";
パディングの問題
3px 1px FireFox は省略形を解釈できません。
は、padding-top:5px; padding-bottom:3px;
に変更する必要があります。リストをインデントする場合、 スタイルは次のように記述する必要があります: list-style:none;margin:0px;padding:0px;
ここで、margin 属性は IE とパディングに対して有効です。属性は FireFox
で有効です。 23. CSS 透明度
IE: filter:progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=60)。 FF:不透明度:0.6。
24. CSS 角丸 IE: 角丸はサポートされていません。
FF: -moz-border-radius:4px、または -moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomleft:4px;-moz -ボーダー半径-右下:4px;。
25. CSS 二重線バンプボーダー IE: border:2px offset;。
FF: -moz-border-top-colors: #d4d0c8 ホワイト;-moz-border-left-colors: #d4d0c8 ホワイト;-moz-border-right-colors:#404040 #808080;-moz-border- bottom-colors: #404040 #808080;
26. select のオプション コレクションに対する操作 [] に加えて、列挙要素に対して selectName.options.item() も使用できます。さらに、selectName .options.length、selectName.options.add/remove は両方のブラウザで使用できます。追加後の要素の割り当てには注意してください。そうしないと失敗します (これは私がテストしたものです)。
27. XMLHTTP の違い
//mf if (window.XMLHttpRequest) //mf
{
xmlhttp=new XMLHttpRequest() xmlhttp . xmlhttp.open("GET",url,true)
xmlhttp.send(null)
}
//ie
else if (window.ActiveXObject) // IE 用のコード
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
if (xmlhttp)
{
xmlhttp.
xmlhttp.open("GET",url,true)
xmlhttp.send()
}
}
}
28. innerHTML の違い
Firefox は innerHTML をサポートしていません。解決策は次のとおりです
rng = document.createRange();
el = document.getElementById(elementid);
htmlFrag = rng.createContextualFragment(content); .hasChildNodes()) //元のコンテンツをクリアし、新しいコンテンツを追加します。 el.removeChild(el.lastChild);
29. 🎜>
IE では
を使用して画像を更新できますが、FireFox では使用できません。これは主にキャッシュの問題であり、アドレスの後に乱数を追加することで解決できます。 onclick イベント コードを「this.src=this.src '?'」のように編集します。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









WebSocket と JavaScript を使用してオンライン音声認識システムを実装する方法 はじめに: 技術の継続的な発展により、音声認識技術は人工知能の分野の重要な部分になりました。 WebSocket と JavaScript をベースとしたオンライン音声認識システムは、低遅延、リアルタイム、クロスプラットフォームという特徴があり、広く使用されるソリューションとなっています。この記事では、WebSocket と JavaScript を使用してオンライン音声認識システムを実装する方法を紹介します。

Ubuntu Linux で FirefoxSnap を削除するには、次の手順に従います。 ターミナルを開き、管理者として Ubuntu システムにログインします。次のコマンドを実行して FirefoxSnap をアンインストールします: sudosnapremovefirefox 管理者パスワードの入力を求められます。パスワードを入力し、Enter キーを押して確認します。コマンドの実行が完了するまで待ちます。完了すると、FirefoxSnap は完全に削除されます。これにより、Snap パッケージ マネージャー経由でインストールされた Firefox のバージョンが削除されることに注意してください。他の方法 (APT パッケージ マネージャーなど) を通じて別のバージョンの Firefox をインストールした場合は、影響を受けません。上記の手順を実行します

WebSocketとJavaScript:リアルタイム監視システムを実現するためのキーテクノロジー はじめに: インターネット技術の急速な発展に伴い、リアルタイム監視システムは様々な分野で広く利用されています。リアルタイム監視を実現するための重要なテクノロジーの 1 つは、WebSocket と JavaScript の組み合わせです。この記事では、リアルタイム監視システムにおける WebSocket と JavaScript のアプリケーションを紹介し、コード例を示し、その実装原理を詳しく説明します。 1.WebSocketテクノロジー

多くのユーザーは、コンピューターの操作中にフリーズやブルー スクリーンに遭遇することがありますが、現時点では、最も安定して動作する Win10 バージョンを見つける必要があります。全体的に非常に使いやすく、毎日の使用がスムーズになります。史上最も安定したWin10バージョン 1. Win10純正のオリジナルシステム. ユーザーは簡単な操作を使用できます. システムは最適化されており、強力な安定性、セキュリティと互換性を備えています. ユーザーは手順に従って完璧なマシンを達成できます. 2. ロシアのマスター合理化 win10 のバージョンは厳密に合理化され、多くの不要な機能やサービスが削除されました。合理化後は、システムの CPU とメモリの使用量が減り、動作が速くなります。 3. Win10 Lite Edition 1909 は、異なるハードウェア モデルの複数のコンピューターにインストールされています。

ますます多くのユーザーが win11 システムにアップグレードし始めています。各ユーザーの使用習慣が異なるため、多くのユーザーは依然として ie11 ブラウザーを使用しています。では、win11 システムで ie ブラウザーを使用できない場合はどうすればよいでしょうか? Windows11はIE11をまだサポートしていますか?解決策を見てみましょう。 win11でie11ブラウザが使えない問題の解決策 1. まず、スタートメニューを右クリックし、「コマンドプロンプト(管理者)」を選択して開きます。 2. 開いたら、「Netshwinsockreset」と直接入力し、Enter キーを押して確定します。 3. 確認後、「netshadvfirewallreset&rdqu」と入力します。

JavaScript と WebSocket: 効率的なリアルタイム天気予報システムの構築 はじめに: 今日、天気予報の精度は日常生活と意思決定にとって非常に重要です。テクノロジーの発展に伴い、リアルタイムで気象データを取得することで、より正確で信頼性の高い天気予報を提供できるようになりました。この記事では、JavaScript と WebSocket テクノロジを使用して効率的なリアルタイム天気予報システムを構築する方法を学びます。この記事では、具体的なコード例を通じて実装プロセスを説明します。私たちは

JavaScript チュートリアル: HTTP ステータス コードを取得する方法、特定のコード例が必要です 序文: Web 開発では、サーバーとのデータ対話が頻繁に発生します。サーバーと通信するとき、多くの場合、返された HTTP ステータス コードを取得して操作が成功したかどうかを判断し、さまざまなステータス コードに基づいて対応する処理を実行する必要があります。この記事では、JavaScript を使用して HTTP ステータス コードを取得する方法を説明し、いくつかの実用的なコード例を示します。 XMLHttpRequestの使用

最近、多くの win10 ユーザーが、コンピューターのブラウザーを使用するときに、IE ブラウザーが常に自動的にエッジ ブラウザーにジャンプすることに気付きました。このサイトでは、win10でIEを開いたときに自動的にエッジにジャンプして閉じる方法をユーザーに丁寧に紹介しましょう。 1. Edge ブラウザにログインし、右上隅にある [...] をクリックして、ドロップダウン設定オプションを探します。 2. 設定を入力したら、左側の列の「デフォルトのブラウザ」をクリックします。 3. 最後に、互換性で、Web サイトが IE モードで再ロードされないようにチェックボックスをオンにし、IE ブラウザを再起動します。
