|WEBWebサイトを構築していく中でユーザーが利用しているWebブラウザによって処理を変えたいことがあります。した場合にはJavaScriptで条件分岐をさせて処理を変える方法をとっていきます。JavaScriptのプログラムがWebブラウザで挙動が違ったりうまく動かないといった時に、JSファイルをブラウザによって切り替えるといった対応をすることができます。ここではJavaScriptでユーザーが利用しているWebブラウザを判定して処理を変える方法をご紹介します。ブラウザ情報を取得するJavaScriptでユーザーが利用しているWebブラウザの情報を取得するには「window.navigator.userAgent」を使います。navigatorオブジェクトのuserAgentプロパティでユーザーがアクセスした時のユーザー情報が取得できますので、そのユーザーの情報からブラウザの情報を確認します。window.navigator.userAgent;console.log(ua);処理の結果はconsole.log()でWebブラウザのコンソールに結果を表示させています。Chromeでアクセスした結果が確認できます。各Webブラウザの結果では以下のように情報が取得できます。OPR/57.0.3098.106この情報を元にWebブラウザの判定を行って処理を変えます。EdgeやOperaでChromeとSafariの文字列が入っていたりします。Edgeでも、「Edge」と「Edg」と違いがありますので、新旧ブラウザの判別には気をつけてください。EdgeもWindowsと同じです。これから出力結果の文字列を元にブラウザ判定を行いますが、複数のブラウザの文字列が含まれてくることも計算した上で条件分岐を行っていきます。ブラウザを判定して処理を変えるブラウザを判定をユーザーエージェントの情報を元に行っていきますが、ブラウザの情報の文字列で判断していきます。文字列を判断するためにindexOf()メソッドを使います。indexOfメソッドは文字列内に指定した文字列が含まれているか検索するメソッドになります。引数に検索する文字列を記述してマッチする文字列を探します。見つからなければ-1を返します。userAgentの情報を入れた変数からindexOfメソッドで文字列を検索し、-1でなければ指定した検索文字列が見つかったので、その文字列を含んでいる場合の処理として条件分岐させます。文字列の大文字と小文字は区別されるので気をつけてください。ExplorerやOperaブラウザは古いバージョンを利用していると違いがありますので、OR条件で複数の指定しておきます。あとは記述する順番を気をつけてもらえば各ブラウザの判断を間違えることはないでしょう。1つ、サンプルとしてWebブラウザによって読み込むJSファイルを変えるといったサンプルコードを用意しました。ExplorerやEdgeといったMicrosoft製のブラウザだけうまくJavaScriptが動かないなんてことがあったとして、IEとEdgeだけは別のJSファイルを読み込んで、その他のブラウザは従来のJSファイルを読み込ませるといった条件分岐になります。}</script>条件によってdocument.writeでHTMLでタグを出力しています。タグを出力する際にはシングルクォーテーションとダブルクォーテーションの入れ子とscriptの終了タグのスラッシュ「/」をバックスラッシュ「\」でエスケープ処理をするのに気をつけてください。JavaScriptを読み込ませるheadタグまたはbodyの終了タグの直前などに記述してもらえれば良いかと。CSSの読み込みの制御にも利用できるでしょう。CSSの場合はCSSハックで制御する方もいるかと思いますが。9」といった文字列検索で対応することができます。その場合は変数を「let」ではなく「var」で宣言してください。古いバージョンのブラウザはletが対応していないので。.NET4.0E)また、WordPressなどPHPが利用できる環境でしたらサーバサイドでの処理のほうがJavaScriptが無効に設定されているユーザーにも対応できますので、PHPでのブラウザ判定をされると良いでしょう。PHPでのブラウザ判定の方法はこちらで紹介していきます。データベースのテーブル構造でカラムの順番を変更するHTML5でWebユーザビリティを向上させるフォーム入力欄の構築JavaScriptで日付を扱うためのDateオブジェクトのメソッドいろいろMacでMAMPを使ってWeb開発環境(ローカル開発環境)を構築PHPを使ったWrodPressなどでCSSやJSファイルを更新した時だけキャッシュをクリアCookieよりも扱いやすい。10でコピーした履歴を確認して利用できるクリップボード機能を使うPROFILEAkira元ボクサー、元トラックドライバーと不思議な経歴を持つ。納豆はご飯と分けて食べるタイプ。