- ベストアンサー
macかwinか判別しスタイルシートを振り分けたい
こんにちは。 macかwinか判別して外部スタイルシートの読み込みを振り分けたいのですが、(mac.cssかwin.css)ご存知の方教えてください。 トップページはフレームになっていて、各コンテンツのページの文章をスタイルシートで設定しています。 この場合はスクリプトは各コンテンツのページにそれぞれ記述するのでしょうか? いろいろ調べましたが、ブラウザ別ばかりだったので・・・。 javascriptは初心者です・・。 どうぞよろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
<HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META http-equiv="Content-Script-Type" content="text/javascript"> <META http-equiv="Content-Style-Type" content="text/css"> <TITLE>JavaScript</TITLE> <LINK href="win.css"; TITLE="win" TYPE="text/css" REL="stylesheet"> <LINK href="mac.css"; TITLE="mac" TYPE="text/css" REL="stylesheet"> <LINK href="nor.css"; TITLE="nor" TYPE="text/css" REL="stylesheet"> <SCRIPT type="text/javascript"> <!-- var st = document.styleSheets; var accP = navigator.userAgent.toUpperCase(); if(accP.indexOf("WIN") >= 0) accName ="win"; else if(accP.indexOf("MAC") >= 0) accName ="mac"; else accName ="nor"; if(st){ for (var i = 0; i < st.length; i++){ if(accName && (st[i].title == accName || st[i].title == "")) st[i].disabled = false; else st[i].disabled = true} } //--> </SCRIPT> </HEAD> <BODY> HTML本文 </BODY> </HTML> 上記スクリプトをそのままコピペしてください HTML本文のところを簡単なタグ付きにしてください 同じディレクトリに外部スタイルシート win.css mac.css nor.css と3種類作って保存してください 実行すれば それぞれのOSに対してスタイルシートが読み込まれます ただし、NN4の場合は動作しませんがエラーにはならず、最後のスタイルシートnor.cssが反映されます この場合OSの判別は出来ません (単純に最後に読み込まれたスタイルシートが反映されます) また、その他のOSの場合もnor.cssが反映されると思います 私、Win系ですのでMacでの動作確認はしておりません Winでの動作確認は、NN4、NN7、IE6です ただ、この方法は万能ではありませんので、本当はそれぞれのOSに対応したページを作られて分岐した方がダサイやりかたですが確実です スクリプトは各ページに必要です こんなところでいかがでしょうか
その他の回答 (2)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
navigator.appVersion で、使用OSの情報が含まれていると思いますので、 これを使えばいいと思います。
お礼
ありがとうございました。 もうすこし勉強してみます・・。
- t-d-s
- ベストアンサー率23% (49/213)
こんなかんじでしょうか? http://www.javadeveloper.jp/members/general/Article.category_topic_article_tips_issue_antCondition.dhtml
お礼
ありがとうございました。 もうすこし勉強してみます・・。
お礼
あ、、ありがとうございます!!! 本当にありがとうございます!! 今日もいろいろスクリプトを探し回っていたのですが、 どこをどう変えるのかもよくわからなくて悩んでいたところです・・・。 そしてふと、winやmac以外のOSだったらどうなるんだろ・・・と思ったりしてました・・。 至れり尽くせりではないですか! 本当にありがとうございました。 感謝します。ありがとうございました!!