index.htmlを表示する際に、以下のような条件分岐を行いたいです。JavaScript以外のプログラミング言語でも構いません。
条件1.Javascriptがオンであるか否かを自動で判定する。
結果1.オン:条件2に進む
結果1.オフ:警告表示をする。または、index.html以外の警告HTMLページを表示する。index.htmlは表示しない。
条件2.ブラウザがインターネットエクスプローラであるか否かを自動で判定する。
結果2.正:index.htmlを表示する。
結果2.否:警告表示をする。または、index.html以外の警告HTMLページを表示する。index.htmlは表示しない。
尚、私はJavaScriptに関して全く無知な状態です。HTML、CSSは一通り勉強済みです。その点を踏まえてご回答いただければ幸いです。
お手数ですが、ご回答いただきますよう宜しくお願い致します。
No.2ベストアンサー
- 回答日時:
Javascriptが利用不可能である場合、そもそもJavascriptが
実行されませんから、代替となる表示を行うことになります。
---------------------------------------------
<script type="text/javascript">
<!--
alert("いらっしゃいませ。");
-->
</script>
<noscript>
当サイトの閲覧にはJavascript対応ブラウザが必要です。
</noscript>
---------------------------------------------
上記コードのように、<noscript>タグを使用することで、
<script>タグを実行できない環境で表示する部分を
仕込むことができます。
また、Javascriptに対応していない環境で<script>タグの
中身が表示されてしまうのを防ぐためにコメントで囲います。
(Javascript自体はコメントの有無に関係なく動作します。)
Javascript内では、以下のようなコードを記述することで
ブラウザを判別することができます。ただしユーザエージェントは
簡単に偽装が可能なので、本当にIEかの保障はありませんが。
----------------------------------------------------
if(navigator.userAgent.indexOf("MSIE") != -1)
{
// IEのときはこのコードを通る
}
else
{
// IE以外のときはこのコードを通る
}
-----------------------------------------------------
以下のコードは別ページにジャンプする機能です。
IEの場合だけジャンプしたい、という場面で使えますね。
上記のユーザエージェントと組み合わせて、携帯電話なら
携帯用ページに転送する、といった使い方もできます。
-----------------------------------------------------
document.location = "http://oshiete1.goo.ne.jp/";
-----------------------------------------------------
上記を組み合わせた一例を以下に示します。
-----------------------------------------------------
<script type="text/javascript">
<!--
if(navigator.userAgent.indexOf("MSIE") != -1)
{
// IEのときはこのコードを通る
document.location = "http://oshiete1.goo.ne.jp/";
}
else
{
// IE以外のときはこのコードを通る
alert("当サイトはInternet Explorer専用です。");
document.location = "http://google.ne.jp/";
}
-->
</script>
<noscript>
当サイトの閲覧にはJavascript対応ブラウザが必要です。
</noscript>
-----------------------------------------------------
Javascript非対応の場合:
→当サイトの閲覧にはJavascript対応ブラウザが必要です。
Javascript対応だがIEではない場合:
→当サイトはInternet Explorer専用です。のメッセージ表示。
→OKボタンを押した後にgoogleへジャンプ。
Javascript対応かつIEの場合:
→教えて!gooへジャンプ。
以上です。
とても丁寧なご回答をいただき、感謝しております。
本当にありがとうございます。
組み合わせの一例を添えてくださったおかげて、JavaScriptの初心者である私でも自サイトに実装することができそうです。
また、実際に一例をいじることで、学習意欲が向上すると思います。
今後とも宜しくお願い致します。
No.1
- 回答日時:
条件1
HTMLが提供しているわ。
<noscript>を使うの。
index.html以外にしたければ
JavaScriptが利用可能な場合は
<script>でindex.htmlに飛ばせばいいわ。
JavaScriptが利用できなければ
<script>内のスクリプトが実行されないことを利用した手段ね。
条件2
index.htmlを表示しない方法を取る場合は
サーバサイドのアプリケーションで判定するか
最初に表示するページをindex.html意外にして
JavaScriptで飛ばすしかないわね。
index.htmlに警告表示するならJavaScriptでできるわよ。
判定式はインターネット上にサンプルが腐るほど転がっているから。
> 私はJavaScriptに関して全く無知な状態です
嫌よ。勉強しなさい。
自分で作ってみてそれでどうしてもわからなければ
いくらでも助けてあげるわ。
でも最初から全部教えてはあげない。
私はあなたの先生じゃないんだから。
ご回答いただき、有難うございます。
自分で考えることはとても大切なことですよね。
自学を基本姿勢として、今後もウェブアプリケーションの勉強を進めていきたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL MySQL,JavaScript,PHPコードの結果を表示する方法を教えてください。 1 2023/02/13 17:49
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- JavaScript スマフォではボタンを表示させたくない 2 2023/01/20 14:26
- PHP PHP MySql ページング 2 2022/09/20 06:38
- Excel(エクセル) エクセルの数式について教えてください。 2 2023/03/04 09:54
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- HTML・CSS HTMLの条件によって表示方向が切り替わる実装のコードを教えて下さい。 (コードは下記リンクを参照) 1 2022/09/25 14:35
- Excel(エクセル) エクセルでINDEXとMACTHで出てきたデータの数を数えるには? 1 2023/04/25 10:21
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Google scriptについて 至急scr...
-
onbeforeunload時のwindow.open...
-
javascriptでbgmを自動再生する...
-
<aタグで変数に文字を代入
-
プルダウンから1個選んで、豆知...
-
リンク先のJavaScriptを実行す...
-
JavaScriptからVBScriptの呼び...
-
<a href="#" …>の意味を教えて...
-
別ページのインラインフレーム...
-
特定のページから移動してきた...
-
別ファイルのfunctionの読み込み方
-
テキストボックス内にハイパー...
-
getElementsByNameで要素が取得...
-
javasprictの構文について
-
bodyにidをつける理由は何ですか?
-
bodyタグのfocus
-
JavaScript でキーを送る
-
変数の代入値を外部の.txtファ...
-
showModalDialog内でのページ遷移
-
html javascript 作った配列を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Vbscriptで自分自身のウィンド...
-
JavaScriptからVBScriptの呼び...
-
毎回、ページ読み込み時に1回...
-
ウインドウの後ろに隠れている...
-
onbeforeunload時のwindow.open...
-
<aタグで変数に文字を代入
-
javascriptでbgmを自動再生する...
-
datepickerで日付の値を取得したい
-
JavaScript関数呼出し元の要素...
-
Cygwinでログをのこす方法
-
showModalDialogで開いた画面か...
-
PrintScreenキーを無効にしたい
-
undefinedが表示されてしまう
-
ブラウザの「戻る」ボタンを押...
-
リンク先のJavaScriptを実行す...
-
<script>...</script> 要素の内
-
location.reload() について
-
フォルダ名の取得方法
-
確認ダイアログで「キャンセル...
-
Java ScriptでIPによるアクセス...
おすすめ情報