• 检测屏幕的宽度


    【教学视频】封装检测屏幕宽度【可视区】案例:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <p>检测发现1:所有浏览器都支持怪异模式了,所以没必要在单独判断</p>
    <p>检测发现2:ie9以上版本标准模式都适用,但是ie9以下只有标准模式适用</p>
    </body>
    </html>
    <script>
        function client() {
            if(window.innerWidth != null) {  // ie9 及以上版本
                return {
                    window.innerWidth,
                    height:window.innerHeight
                }
            }else if(document.compatMode === "CSS1Compat") {  // 标准模式
                return {
                    document.documentElement.clientWidth,
                    height:document.documentElement.clientHeight
                }
            }
            return { // 怪异模式【不带有DTD】
                document.body.clientWidth,
                height:document.body.clientHeight
            }
        }
    
        console.log("ie9及以上版本"+window.innerWidth);
        console.log("标准版本"+document.documentElement.clientWidth);
        console.log("怪异模式:"+document.body.clientWidth);
    
            var c = client();
            document.write(c.width);
    </script>

    经过测试:谷歌,火狐,ie9+,ie678均支持document.documentElement.clientWidth【标准模式】。测试去除DTD,标准模式对所述浏览器也支持。

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <p>检测发现1:所有浏览器都支持怪异模式了,所以没必要在单独判断</p>
    <p>检测发现2:ie9以上版本标准模式都适用,但是ie9以下只有标准模式适用</p>
    </body>
    </html>
    <script>
        function client() {
            return {
                document.documentElement.clientWidth,
                height:document.documentElement.clientHeight
            }
        }
    
        console.log("ie9及以上版本"+window.innerWidth);
        console.log("标准版本"+document.documentElement.clientWidth);
        console.log("怪异模式:"+document.body.clientWidth);
    
        var c = client();
        document.write(c.width);
    </script>

    直接使用标准模式封装。

    前进时,请别遗忘了身后的脚印。
  • 相关阅读:
    Matlab 图像处理中出现纯黑或纯白是怎么回事?
    网页中的公式在翻译时如何被保留下来?
    请勿 fAKe 评论
    C++ STL 使用注意事项整理
    APIO 2020 题解
    谈谈对题解本质的理解
    点双 & 边双连通图计数的细节比较
    联合省选 2021 A 卷 题解
    指数生成函数(EGF)计数小记
    UOJ-37 清华集训2014 主旋律
  • 原文地址:https://www.cnblogs.com/liudaihuablogs/p/9472320.html
Copyright © 2020-2023  润新知