ホームページ > ウェブフロントエンド > htmlチュートリアル > jsを自動実行する画面サイズはどうやって決めるのでしょうか? _html/css_WEB-ITnose

jsを自動実行する画面サイズはどうやって決めるのでしょうか? _html/css_WEB-ITnose

WBOY
リリース: 2016-06-24 11:59:09
オリジナル
1630 人が閲覧しました

画面幅が 800px 未満の場合、div を自動的に非表示にしたい


ディスカッションへの返信 (解決策)

<div id="div"></div>
ログイン後にコピー

var browserWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;if(browserWidth<800){       document.getElementById("div").style.display="none";}
ログイン後にコピー

上の階からコードをお借りして、実際、私の提案はこれです、元の投稿者が言及した効果は、ie9 以上の css3 のメディアで実現できます。次に、jsを使用して以下を実装し、resizeイベントのバインディングを追加しないと、非表示後に拡大したときにウィンドウが表示されません。完全な参照コードは次のとおりです:

<!doctype html><html><head>    <meta charset="UTF-8">    <title></title>    <style type="text/css">        @media screen and (max-width:800px) {            #div{ color:#f00;}        }    </style>    <!--[if lt IE 9]>    <script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script>    <script src="hide.js"></script>    <![endif]--></head><body><div id="div">this test div</div><script type="text/javascript">    function hideDiv(){        var browserWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;        var div = document.getElementById("div");        if(browserWidth < 800){            div.style.display = "none";        } else {            div.style.display = "block";        }    }    var timer = null;    window.onresize = function(){        timer && clearTimeout(timer);        setTimeout(function(){            hideDiv();        }, 200);    }    hideDiv();</script></body></html>
ログイン後にコピー

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート