ホームページ ウェブフロントエンド jsチュートリアル IE と Firefox の JavaScript 構文の違い_JavaScript のヒント

IE と Firefox の JavaScript 構文の違い_JavaScript のヒント

May 16, 2016 pm 03:04 PM
firefox ie javascript 違い 文法

JavaScript が特定のブラウザーをターゲットにするために長くて煩わしいコード ブロックを使用する歴史的な時代は終わりましたが、ユーザーのマシン上で一部のコードが適切に動作することを確認するために、単純なコード ブロックとオブジェクト検出を時折使用することは依然として必要です。

この記事では、Internet Explorer と Firefox の間の JavaScript 構文の 7 つの側面について簡単に説明します。

1. CSS「float」属性

特定のオブジェクトの特定の CSS プロパティを取得するための基本的な構文は object.style プロパティであり、ハイフンでつながれたプロパティはラクダ表記に置き換えられます。たとえば、ID「header」を持つ div の背景色属性を取得するには、次の構文を使用する必要があります:

コードをコピー コードは次のとおりです。
document.getElementById("header").style.borderBottom = "1px ソリッド #ccc";

しかし、「float」は JavaScript の予約語であるため、object.style.float を使用して「float」属性を取得することはできません。 2 つのブラウザでこれを使用する方法は次のとおりです:

IE 構文:

コードをコピー コードは次のとおりです。
document.getElementById("header").style.styleFloat = "左";

Firefox 構文:

コードをコピー コードは次のとおりです。
document.getElementById("header").style.cssFloat = "左";

2. 要素の計算スタイル

上記の object.style.property を使用すると、JavaScript はオブジェクトに設定されている CSS スタイルを簡単に取得および変更できます。ただし、この構文の制限は、HTML 内のインライン スタイル、または JavaScript を使用して直接設定されたスタイルのみを取得できることです。スタイル オブジェクトは、外部スタイル シートを使用して設定されたスタイルを取得できません。オブジェクトの「計算されたスタイル」を取得するには、次のコードを使用します:

IE 構文:

var myObject = document.getElementById("header"); 
var myStyle = myObject.currentStyle.backgroundColor;
ログイン後にコピー

Firefox 構文:

var myObject = document.getElementById("header");
var myComputedStyle = document.defaultView.getComputedStyle(myObject, null);
var myStyle = myComputedStyle.backgroundColor;


ログイン後にコピー

3. 要素

の「class」属性を取得します。

「float」属性の場合と同様に、2 つのブラウザは異なる JavaScript メソッドを使用してこの属性を取得します。

IE 構文:

var myObject = document.getElementById("header");
var myAttribute = myObject.getAttribute("className");
ログイン後にコピー

Firefox 構文:

var myObject = document.getElementById("header");
var myAttribute = myObject.getAttribute("class");


ログイン後にコピー

4. label タグの for 属性を取得します

3 と同様に、JavaScript を使用してラベルの "for" 属性を取得するための別の構文もあります。

IE 構文:

var myObject = document.getElementById("myLabel");
var myAttribute = myObject.getAttribute("htmlFor");
ログイン後にコピー

Firefox 構文:

var myObject = document.getElementById("myLabel");
var myAttribute = myObject.getAttribute("for");
ログイン後にコピー

setAtrribute メソッドにも同じ構文が使用されます。

5. カーソル位置を取得します

要素のカーソル位置を取得する必要がある場合は、IE と Firefox の構文が異なります。このサンプル コードはかなり基本的なもので、通常は多くの複雑なイベント ハンドラーの一部として使用され、ここでは違いを説明するためにのみ使用されます。 IE での結果は Firefox での結果とは異なるため、このアプローチにはいくつかの問題があることに注意してください。通常、この違いは「スクロール位置」を取得することで補正できますが、それについては別の記事で説明します。

IE 構文:

var myCursorPosition = [0, 0];
myCursorPosition[0] = event.clientX;
myCursorPosition[1] = event.clientY;
ログイン後にコピー

Firefox 構文:

var myCursorPosition = [0, 0];
myCursorPosition[0] = event.pageX;
myCursorPosition[1] = event.pageY;
ログイン後にコピー

6. ウィンドウまたはブラウザウィンドウのサイズを取得します

ブラウザの有効ウィンドウ領域 (通常は「ウィンドウ」と呼ばれます) のサイズを確認する必要がある場合があります。

IE 構文:

var myBrowserSize = [0, 0];
myBrowserSize[0] = document.documentElement.clientWidth;
myBrowserSize[1] = document.documentElement.clientHeight;


ログイン後にコピー

Firefox 構文:

var myBrowserSize = [0, 0];
myBrowserSize[0] = window.innerWidth;
myBrowserSize[1] = window.innerHeight;


ログイン後にコピー

7. Alpha 透明

嗯,这其实不是 JavaScript 的语法项目 - alpha 透明是通过 CSS 来设置的。但是当对象通过 JavaScript 设置为淡入淡出时,这就需要通过获取 CSS 的 alpha 设定来实现,一般是在循环内部。要通过以下 JavaScript 来改变 CSS 代码:

IE 语法:

 #myElement {
filter: alpha(opacity=50);
}
ログイン後にコピー

Firefox 语法:

 #myElement {
opacity: 0.5;
}
ログイン後にコピー

要使用 JavaScript 获取这些值,需要使用 style 对象:

IE 语法:

var myObject = document.getElementById("myElement");
myObject.style.filter = "alpha(opacity=80)";


ログイン後にコピー

Firefox 语法:

var myObject = document.getElementById("myElement");
myObject.style.opacity = "0.5";


ログイン後にコピー

当然,已经说到了,一般是在循环中间来改变 opcity/alpha,来创建动画效果,但这这是个简单的例子,只是为了明白地描述方法是如何实现地。

7个方面在JavaScript语法上不同的点,希望对大家的学习有所帮助。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Ubuntu LinuxでFirefox Snapを削除するにはどうすればよいですか? Ubuntu LinuxでFirefox Snapを削除するにはどうすればよいですか? Feb 21, 2024 pm 07:00 PM

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

徹底した比較: Dimensity 8200 と Snapdragon の違いの分析 徹底した比較: Dimensity 8200 と Snapdragon の違いの分析 Mar 22, 2024 pm 12:48 PM

モバイル インターネットの時代において、携帯電話のパフォーマンスは常にユーザーの注目の 1 つです。携帯電話用チップ市場のリーダーとして、MediaTek と Qualcomm も自社のチップで消費者の注目を集めています。最近、MediaTek は Dimensity 8200 チップを発売しましたが、Qualcomm は代表的な Snapdragon シリーズチップを持っています。では、これら 2 つのチップの違いは何でしょうか?この記事では、Dimensity 8200とSnapdragonの詳細な比較分析を行います。まずプロセス技術の観点から見ると、Dimensity 8200は最新の6nmプロセス技術を使用していますが、Qualcomm Snapdragonの一部は

win11でie11ブラウザが使えない場合はどうすればいいですか? (win11ではIEブラウザは使用できません) win11でie11ブラウザが使えない場合はどうすればいいですか? (win11ではIEブラウザは使用できません) Feb 10, 2024 am 10:30 AM

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

Oracle11g バージョンと Oracle12c バージョンの違いの解釈 Oracle11g バージョンと Oracle12c バージョンの違いの解釈 Mar 07, 2024 pm 02:30 PM

Oracle Database は常にエンタープライズレベルのデータベース管理システムのリーダーの 1 つであり、継続的に更新され反復されるバージョンも幅広い注目を集めています。その中でもOracle11gとOracle12cのバージョンは比較的代表的なバージョンであり、多くの違いがあります。この記事では、Oracle11g と Oracle12c のいくつかの重要な違いについて説明し、読者が 2 つのバージョンの違いをより深く理解できるように、具体的なコード例を添付します。 1. アーキテクチャの違い Oracle1

簡単な JavaScript チュートリアル: HTTP ステータス コードを取得する方法 簡単な JavaScript チュートリアル: HTTP ステータス コードを取得する方法 Jan 05, 2024 pm 06:08 PM

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

ラムダ式の構文と構造の特徴は何ですか? ラムダ式の構文と構造の特徴は何ですか? Apr 25, 2024 pm 01:12 PM

ラムダ式は名前のない匿名関数であり、その構文は (parameter_list)->expression です。匿名性、多様性、カリー化、閉鎖性が特徴です。実際のアプリケーションでは、ラムダ式を使用して、合計関数 sum_lambda=lambdax,y:x+y などの関数を簡潔に定義し、map() 関数をリストに適用して合計演算を実行できます。

Win10でIEを開いた時のEdgeへの自動ジャンプを解除する方法_IEブラウザページの自動ジャンプの解決方法 Win10でIEを開いた時のEdgeへの自動ジャンプを解除する方法_IEブラウザページの自動ジャンプの解決方法 Mar 20, 2024 pm 09:21 PM

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

Git またはバージョン管理? PHP プロジェクト管理の主な違い Git またはバージョン管理? PHP プロジェクト管理の主な違い Mar 10, 2024 pm 01:04 PM

バージョン管理: 基本的なバージョン管理は、チームがコード ベースの変更を追跡できるようにするソフトウェア開発手法です。これは、プロジェクト ファイルのすべての履歴バージョンを含む中央リポジトリを提供します。これにより、開発者はバグを簡単にロールバックしたり、バージョン間の差異を確認したり、コード ベースに対する同時変更を調整したりすることができます。 Git: 分散バージョン管理システム Git は分散バージョン管理システム (DVCS) であり、各開発者のコ​​ンピュータにはコード ベース全体の完全なコピーが存在します。これにより、中央サーバーへの依存がなくなり、チームの柔軟性とコラボレーションが向上します。 Git を使用すると、開発者はブランチの作成と管理、コード ベースの履歴の追跡、他の開発者との変更の共有が可能になります。 Git とバージョン管理: 分散型とセット型の主な違い

See all articles