窗口尺寸,文档高,元素宽高的获取方式

一.元素宽高:

window.onload = function() {
    var oDiv = document.getElementById('div1');
    /*
        width height
        style.width : 样式宽
        clientWidth : 可视区宽
        offsetWidth    : 占位宽
    */   
    alert( oDiv.style.width );    //100
    alert( oDiv.clientWidth );    //样式宽 + padding    120
    alert( oDiv.offsetWidth );    //样式宽 + padding + border  可视区宽 + 边框    122   
}

<body>
    <div id="div1" style="width: 100px; height: 100px; border: 1px solid red; padding: 10px; margin: 10px;"></div>
</body>

 

二.窗口尺寸

1.可视区尺寸
   alert( document.documentElement.clientHeight );

2.滚动距离
      document.documentElement.scrollTop;     // firefox,IE下的,此方式在chrome下始终为0
      document.body.scrollTop ;                         // chorme下的
      var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;   //使用时做兼容性处理
      alert(scrollTop)

3.offsetLeft[Top]

  元素.offsetLeft[Top] : 只读 属性 当前元素到定位父级的距离(偏移值)
            到当前元素的offsetParent的距离


            如果没有定位父级
                offsetParent -> body
                offsetLeft -> html
            
            如果有定位父级
                ie7以下:如果自己没有定位,那么offsetLeft[Top]是到body的距离
                        如果自己有定位,那么就是到定位父级的距离
                其他:到定位父级的距离

4.scrollHeight

    scrollHeight : 内容实际宽高

   <body style="height:2000px;">
        <div id="div1" style="width:100px;height:100px;border: 1px solid red; overflow: -auto; padding: 10px;">
            <div style="height: 600px;width: 90px; background: red;"></div>
        </div>
   </body>

   alert(oDiv.scrollHeight);

三.文档高

  offsetHeight
     alert( document.body.offsetHeight );


     ie : 如果内容没有可视区高,那么文档高就是可视区
     alert( document.documentElement.offsetHeight );

四.clientX[Y]

  clientX[Y] : 当一个事件发生的时候,鼠标到页面可视区的距离

  function fn1(ev) {
      var ev = ev || event;
      alert(ev.clientX);
  }
  document.onclick = fn1;

 

  分享技术,分享快乐!

转载于:https://www.cnblogs.com/babywin/p/6246547.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/572848.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mariadb使用总结

一、pt-quert-digest使用1、安装perl程序12yum -y install perl-Time-HiResyum -y install perl-DBI二、登录授权123456789service mysqld stop/usr/bin/mysqld_safe --skip-grant-tables &use mysql;update user set passwordpassword(yournewpasswordhere) where userroo…

python执行到input后执行下一程序_Python基础知识储备,如何开关一个while循环

一、什么是循环循环语句就是在某种条件下&#xff0c;一遍一遍重复的执行某个动作。如&#xff1a;从1加到100&#xff0c;重复执行加法的动作&#xff0c;就需要用到循环。二、循环的三要素虽然循环是反复的执行某个动作&#xff0c;但是循环也会停止的&#xff0c;没有停止的…

Intellij idea添加单元测试工具

1.idea 版本是14.0.0 &#xff0c;默认带有Junit&#xff0c;但是不能自动生成单元测试&#xff0c;需要下载JunitGererator2.0插件 2.Settings -Plugins&#xff0c;下载 JunitGenerator V2.0插件 &#xff0c;我的是已经下载好的。下载后提示需要重启 3.下载后 点击需要测试的…

string.empty , , null 以及性能的比较

一&#xff1a;这种结论&#xff0c;个人觉得仍然存疑 http://www.cnblogs.com/wangshuai901/archive/2012/05/06/2485657.html 1.null null 关键字是表示不引用任何对象的空引用的文字值。null 是引用类型变量的默认值。那么也只有引用型的变量可以为NULL&#xff0c;如果 int…

mysql查询当前库的实例名_oracle查询数据库名、实例名等

oracle中&#xff1a;1、查询数据库名&#xff1a;select name,dbid from v$database;或者show parameter db_name;2、查询实例名&#xff1a;select instance_name from v$instance;或者show parameter instance_name;3、查询数据库域名&#xff1a;select value from v$param…

JPA 系列教程21-JPA2.0-@MapKeyColumn

MapKeyColumn 用JoinColumn注解和MapKeyColumn处理一对多关系 ddl语句 CREATE TABLE t_employee (id bigint(20) NOT NULL AUTO_INCREMENT,name varchar(255) DEFAULT NULL,PRIMARY KEY (id) ) ENGINEInnoDB AUTO_INCREMENT2 DEFAULT CHARSETutf8;CREATE TABLE t_employee_map…

错误:在keystone中无法找到默认角色user_Kubernetes RBAC角色权限控制

摘选:https://i4t.com/4448.html在Kubernetes中所有的API对象都保存在ETCD里&#xff0c;可是&#xff0c;对这些API对象的操作&#xff0c;却一定是通过访问kube-apiserver实现的。我们需要APIServer来帮助我们授权工作&#xff0c;而在Kubernetes项目中&#xff0c;负责完成授…

JAVAWEB项目如何实现验证码

验证码基础 一.什么是验证码及它的作用 &#xff1a;验证码为全自动区分计算机和人类的图灵测试的缩写,是一种区分用户是计算机的公共全自动程序,这个问题可以由计算机生成并评判,但是必须只有人类才能解答.可以防止恶意破解密码、刷票、论坛灌水、有效防止某个黑客对某一个特定…

在线判题系统(oj)效果分析图_在线代码编写平台开发分享

计算机专业的大学生应该都了解acm比赛&#xff0c;这种通过使用oj(online judge)系统在线编程刷题&#xff0c;实时反馈学习排名的方式能很大程度激发学生的学习热情。oj学习排名界面oj个人学习记录界面只是oj平台一般都只适用后端语言&#xff0c;如java&#xff0c;c#, c,C&a…

BZOJ1298:[SCOI2009]骰子的学问

Description Input 第一行为两个整数n, m。第二行有n个整数&#xff0c;为a1&#xff0c;a2, …, an。 Output 包含n行&#xff0c;每行m个1~nm的正整数&#xff0c;各不相同&#xff0c;以空格分开。如果有多解&#xff0c;输出任意一组解&#xff1b;如果无解&#xff0c;输出…

mysql交叉连接后生成的记录总数_4.mysql数据库创建,表创建模等模板脚本,mysql_SQL99标准的连接查询(内连接,外连接,满外连接,交叉连接)_MySQL...

--用root用户登录系统&#xff0c;执行脚本--创建数据库create database mydb61 character set utf8 ;--选择数据库use mydb61;--增加 dbuser1用户--创建用户‘dbuser61’密码为‘dbuser61’拥有操作数据库mydb61的所有权限GRANT ALL ON mydb61.* TO dbuser61 IDENTIFIED BY &q…

IIS网站或系统验证码不显示问题——使用了托管的处理程序,但是未安装或未完整安装 ASP.NET...

在IIS上发布了一个系统&#xff0c;但是登陆页面的验证码图片一直出不来&#xff0c;尝试了各种办法&#xff0c;权限、路径、继承父类路径等都不管用&#xff0c;进入Login.html,对着无验证码图片的图标&#xff0c;右键复制图片的网址&#xff0c;粘贴到地址栏&#xff0c;出…

mysql索引有字符集_07. 类型、字符集、引擎和索引

字符集是什么&#xff1f;为了更好的识别中文、日文、英文、希腊语。对于常用的符号进行了编码&#xff0c;这个编码就是字符集。字符集确定了文字的存储方式。字符集相当于是计算机中人类的语言。举个例子&#xff1a;我说的是英文&#xff0c;所以我存储的时候要用英文文字来…

oracle--第一天PLSQL--bai

第一天&#xff1a; -- 创建book表 create table book ( bid number primary key, bname varchar2(20) not null, price number(10,2) not null ) -- 插入数据 insert into book(bid,bname,price)values(20,西游记,170.5); insert into book(bid,bname,price)values(12,红楼梦,…

mysql性能优化的8个方法_关键的十个MySQL性能优化技巧

与所有的关系型数据库一样&#xff0c;Mysql仿佛是一头让人难以琢磨的怪兽。它会随时停摆&#xff0c;让应用限于停滞&#xff0c;或者让你的业务处于危险之中。事实上&#xff0c;许多最常见的错误都隐藏在MySQL性能问题的背后。为了确保你的MySQL服务器能够一直处于全速运行的…

修改自己的centos输入法

当自己的centos连上网时&#xff0c;就可以修改自己的输入法了 http://jingyan.baidu.com/album/da1091fb3e7f8a027849d681.html?picindex2 转载于:https://www.cnblogs.com/xiaoyoucai/p/6262054.html

new float查询长度 c++_C/C++经典面试题

面试题 1&#xff1a;变量的声明和定义有什么区别 为变量分配地址和存储空间的称为定义&#xff0c;不分配地址的称为声明。一个变量可以在多个地方声明&#xff0c; 但是只在一个地方定义。加入 extern 修饰的是变量的声明&#xff0c;说明此变量将在文件以外或在文件后面部分…

git相关资料

https://github.com/xirong/my-git 转载于:https://www.cnblogs.com/zhao1949/p/6265503.html

mysql动态变量查询_MySQL将变量传递给动态查询

对不起&#xff0c;如果这是一个基本问题&#xff01; 直至现在我已经创造了PHP的MySQL查询和跨变量传递SQL调用中是这样的&#xff1a;MySQL将变量传递给动态查询$myparam $_GET["id_tbl"];mysql_select_db($database_camerich, $camerich);$query_rs_table sprin…

java8--IO(java疯狂讲义3复习笔记)

产生文件 File file new File("abc.txt");if(!file.exists()){System.out.println(file.exists());file.createNewFile();}System.out.println(file.getAbsolutePath()); 关于临时文件 1).放在指定目录,此时已项目为默认目录 File file File.createTempFile("…