ブラウザや閲覧環境によってレイヤーの表示を制御したい

このQ&Aのポイント
  • WinのIE4.0以降とMac環境・WinのIE3.0以前のブラウザを判別し、レイヤーの表示を制御する方法について教えてください。
  • 質問者はレイヤーの中にFlashを表示する際に、背景透過効果が反映されない問題に直面しています。具体的には、Mac環境及びWinのIE3.0以前のブラウザではFlashの背景透過効果が表示されないため、レイヤーを非表示にしたいと考えています。
  • 質問者はJavaScriptを使用してブラウザとOSのバージョンをチェックし、条件に応じてレイヤーの表示を制御したいと思っています。質問者の要件に合った方法を教えてください。
回答を見る
  • ベストアンサー

レイヤーをブラウザや閲覧環境によって表示(実行)非表示(実行しない)したい

初めまして、今回はじめて書きこみをさせて頂きます。 早速質問なんですが、レイヤーの中にFlashをしようと思っているのですが、WinのIE4.0以降じゃないとFlashの背景透過効果が反映されないので、Mac環境及びWinのIE3.0以前のブラウザを使用している場合、レイヤーを表示させないようにしたいのですが、JavaScriptでこのような動作は可能なのでしょうか? OSチェック(Win)→ブラウザチェック(IE4.0以降)→レイヤーの表示(実行する) OSチェック(Mac・Win)→ブラウザチェック(上記以外のブラウザ)→レイヤーの表示(実行しない) 以上、わかりにくいかも知れませんがどうか宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

回答: 1 こんにちは。 まずコレを、HEAD 内の JavaScript として記入するか、 外部ファイルとして読み込んでください。 ブラウザと OS をチェックします。 var apc=navigator.appCodeName; var apn=navigator.appName; var apv=navigator.appVersion; var ua=navigator.userAgent; var pf=navigator.platform; var vns=apv.substr(0,3); var vnsd=apv.substr(0,4); var B="Unkown"; var P="Unknown"; if((apv.indexOf("Macintosh")>=0)||(apv.indexOf("Mac")>=0)){var P="Mac";} if((apv.indexOf("Windows")>=0)||(apv.indexOf("Win")>=0)){var P="Win";} if((apn=="Microsoft Internet Explorer")&&(ua.indexOf("Opera")<0)&&(document.all)){ var B="IE"; if(ua.indexOf("MSIE 4")>=0){var B="IEv4";} if(ua.indexOf("MSIE 5")>=0){var B="IEv5";} if(ua.indexOf("MSIE 6")>=0){var B="IEv6";} if(ua.indexOf("MSN 6")>=0){var B="MSNv6";} } if((apn=="Netscape")&&(ua.indexOf("Opera")<0)){ var B="NN"; if((vns>=4)&&(vns<5)&&(document.layers)){var B="NNv4";} if((vns>=4.5)&&(vns<4.6)&&(document.layers)){var B="NNv4.5";} if((vns>=4.7)&&(vns<4.8)&&(document.layers)){var B="NNv4.7";} if((vns>=5)&&(vns<6)&&(!document.all&&document.getElementById)){var B="NNv6";} if((vns>=6)&&(vns<8)){var B="NNv7...?";} } if(ua.indexOf("Opera")>=0){ var B="OPERA"; if((ua.indexOf("Opera 6")>=0)||(ua.indexOf("Opera/6")>=0)){var B="OPERAv6";} if((ua.indexOf("Opera 7")>=0)||(ua.indexOf("Opera/7")>=0)){var B="OPERAv7";} } 回答: 2 へ続く

idea_m
質問者

お礼

yellowocean様 正常に動作する事が出来ました!! 本当にありがとうございましたm(__)m

その他の回答 (1)

回答No.2

回答: 2 これは、ブラウザの IE 4.x, IE 5.x, IE 6.x, NN 4.x, NN 4.5x, NN 4.7x, NN 6.x, NN 7.x, Opera 6.x, Opera 7.x のみを明確に検出し、 それ以外のブラウザを Unkown として、無視します。 Unknown でなく Unkown(n をぬいてる) にしてあります。 また、OS は Win か Mac か判別し、そうでなければ Unknown(こちらは n つき) として無視します。 まあ、あまり気にしなくていいです。 さて、処理をします。 回答 3 へ続く

関連するQ&A

  • レイヤーについて(DW)

    ドリームウエーバー(マック)でHPつくっています。 レイヤー機能についての質問ですが、普通にレイヤーを選択し、配置してからIEで見ると、位置が微妙にずれます。ネスケだと表示すらしません。 windowsのIEはマックIEとまた違う位置での表示がされます。WINネスケもダメです。 どのようなことがしたいかと言いますと、画像をonmouseoverすると、レイヤーで囲まれたテーブル(解説文章)が表示し、outすると非表示。それが4つの画像があり、4つともすべて同じ位置に表示がしたい。ブラウザーもWIN、mac,IE,ネスケ同じ見え方ができるようにはどのようにしたらいいのでしょうか? 以前にもレイヤーを使った仕事がありまして、試行錯誤してすべてのブラウザーで同じに見えるようにできたのですが。。 どうか助けてください。お願いします。 乱雑な文章で申し訳ないです。

  • ブラウザによって上手く表示されません

    CSSでデザインとレイアウトをして、それをブラウザに表示させた時、 OSとブラウザによって上手く表示されるものとそうでないのがあり、 それらをどうやって対処したらいいのか分かりません。 具体的には、MAC OS10 のIE5.2とFirefoxが正常に表示されるのに対し、 WINXPのIE7.0とSleipnirでは同じレイアウトの崩れ方をします。Firefoxは大丈夫でした。 逆もまた然りで、WINブラウザで正常に表示させようとすると、MACでは崩れてしまいます。

    • 締切済み
    • CSS
  • NN4とNN6でのレイヤーの表示・非表示

    WINとMACでNN4とNN6でのレイヤーの表示・非表示を制御する、そんな都合の良いJavaScriptってありますか? あったら教えて下さい!!

  • レイヤー・・・ブラウザが古いとぐちゃぐちゃになります

    テーブルでどうしてもうまく表現できない箇所だけをレイヤーにしてサイトデザインを完成させました。 うっかりIE6でしか確認していなかったので、しまったと思い、すぐに以下のブラウザを使用して見栄えを確認してみました。 その結果も合わせて以下に記します。 windows/IE6 問題なし windows/Netscape7.1 問題なし windows/Netscape4.7 レイヤー使用箇所だけずれる windows/Opera7.1  問題なし Mac/IE5  レイヤーの部分だけが表示されて、その下部にページ全体が表示されます。このIE5のずれが一番ひどかったかもしれません。 レイヤーを使い方がまずいのでしょうか。それともブラウザの使用上、これは仕方がないことなのでしょうか。 ちなみにDreamweverMXによる作成です。 レイヤーは凄く便利ですが、それだけ扱いが難しいのだなと痛感いたしました。

  • サイトの表示確認はOSのバージョンよりもブラウザのバージョンを重視

    自社のサイトをデザインしています。 現在は、色々なブラウザがあり、それら全てにおいて表示の検証をしていますが、 お尋ねしたい事があります。 例えば、Win XPでもVistaでもIE7は使えますが、 XPのIE7で表示に問題ないことを確認できれば VistaでIE7で表示しても問題ないと言えますか? 個人的には、表示の崩れや不具合はブラウザのバージョンに依るところが大きいと考えており、 異なるバージョンのOSで同一バージョンのブラウザのチェックをする必要はない気がするのですが、どうなのでしょうか? (ただ、OSがWinとMacという違いであれば、 ブラウザが同じFirefox2でもWinとMacで見比べる必要はあると思いますが) 詳しい方いらっしゃいましたら、どうかご回答よろしくお願い致します。

  • DreamweaverCS4のデザインウィンドウとIE7ブラウザの表示の違いは何故起こるのでしょうか。

    現在、参考書を見ながらWEB作成の勉強をしております。 環境 インターネットエクスプローラー 7 WINDOWS XP Homeedition Servicepack2 Dreamweaver cs4 参考書どおりCSSで背景の色設定をしたのですが、IE7ブラウザにおいては色#EEEEEEが反映しませんでした。#CCCCCCなどの背景色であればIE7でも表示されます。しかし、背景色の上に乗せてあるイメージ画像の透明部分が反映されず、透明部分が白く表示されてしまいます。 DREAMWEAVERのデザインウィンドウであれば、#EEEEEEであっても背景色に表示され、透明画像も透過した状態で参考書の通りに製作課題ができあがります。 本環境はブラウザ上になりますので、DREAMWEAVER CS4のデザインウィンドウのみ通用するだけでは使い物にならないと思います。 製作においてはこのようなことが良くあるのでしょうか。 長くなりましたが、分からない点は次の通りです。 1.#EEEEEEのみがIE7で表示されないのはなぜか。 2.IE7で透明イメージの透明部分が透過されず白く表示されるのはなぜか。 3.DreamweaverCS4のデザインウィンドウとIE7ブラウザの表示がこれほどまでに違うことは良くあることなのか。 解決しなければ先に進む気持ちにならず、識者に頼らなければならない状況です。宜しくお願いします。

  • MACでのwinIEブラウザチェック

    初心者でわからないので、質問させてもらいました。 マックでweb製作したもの(html,cssなど)をwinのIEで ブラウザチェックをする場合どうしたらいいのでしょうか。 マックで圧縮してwinで解凍して見てみたら、全然表示が崩れて 見ることができません。マックの圧縮方法が悪いのでしょうか。 複数のブラウザをチェックできるソフトがあるみたいですが、 マックでWINのIEは確認できますでしょうか。 宜しくお願いします。

    • ベストアンサー
    • CSS
  • macのブラウザについて

    普段windowsを利用するためmacのことはよくわかりませんが、 知り合いのmacで、windowsのAdobe Flash CS3で作ったフラッシュが表示できませんでしたので解決策を探しています。 が、使用していたmacのブラウザがIE5だったのでまずはブラウザを新しいものにしたいのですが、 safariのホームページからダウンロードしようとするも、ダウンロードする際のチェックボタンやメールアドレス入力フォームなども見えない状態でどうしたらいいかがわかりません。 どうしたらダウンロードできるようになるでしょうか。お教えいただきたく思いますよろしくお願いいたします。OSは9.2です。

    • ベストアンサー
    • Mac
  • ターゲットブラウザの選定

    BtoBの企業のサイト制作を行う場合、ブラウザの表示チェックはどこまで行うのが理想でしょうか? Win IE6.× Win NN6.× Win NN7.× MAC IE5.× MAC NN6.× MAC NN7.× MAC Safari 程度で考えてます。 価格にもよるのでしょうが、どのあたりまでカバーする事が多いでしょうか? また、最近のブラウザのシェアも分かれば教えてください。

    • ベストアンサー
    • CSS
  • JavaScriptで「実行中のブラウザ」の確認

    JavaScriptでプログラムを組んでいます。 OSはWin7 Home 64bit、通常使うブラウザは「FireFox」です。 ブラウザによって実行内容を変えたいため、「navigator.appName」で情報を得るのですが、 どのブラウザでも「Netscape」(FireFoxのことだと思います)になってしまいます。 どうも「navigator.appName」は通常使うブラウザの値が設定されているようです。 「通常使うブラウザ」ではなく、「実行中のブラウザ」の情報が欲しいのです。 いい方法があれば、教えてください。

専門家に質問してみよう