技术标签: offset 三大家族 scroll client JavaScript学习笔记 javascript
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>获取元素尺寸</title>
<style>
body {
background: #f1f1f1;
margin: 0;
}
#parent {
width: 400px;
height: 400px;
/*消除 margin-top问题*/
padding-top: 1px;
background: lightgray;
/*position: relative;*/
margin: 50px;
border: 50px solid blue;
overflow-y: scroll;
}
#child {
width: 100px;
height: 100px;
background: green;
margin: 50px;
border: 50px solid red;
padding: 50px;
overflow-y: scroll;
}
</style>
</head>
<body>
<div id="parent">
<div id="child">
黄色部分为子元素,方便查看父节点内容区域,黄色部分为子元素,方便查看父节点内容区域,
</div>
</div>
<script>
const element = document.getElementById("child");
console.log("offsetParent:", element.offsetParent);
console.log("offsetWidth:", element.offsetWidth);
console.log("offsetHeight:", element.offsetHeight);
console.log("offsetLeft:", element.offsetLeft);
console.log("offsetTop:", element.offsetTop);
</script>
</body>
</html>
<!--结果-->
offsetParent: <body>
Offset.html:41:15
offsetWidth: 300 Offset.html:42:15
offsetHeight: 300 Offset.html:43:15
offsetLeft: 150 Offset.html:44:15
offsetTop: 151 Offset.html:45:15
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hEFLNLrC-1608553256252)(https://media.prod.mdn.mozit.cloud/attachments/2012/07/09/346/e376ef78f757870d6d5327498c745681/Dimensions-client.png)]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>获取元素尺寸</title>
<style>
body {
background: #f1f1f1;
margin: 0;
}
#parent {
width: 400px;
height: 400px;
/*消除 margin-top问题*/
padding-top: 1px;
background: lightgray;
position: relative;
margin: 50px;
border: 50px solid blue;
overflow-y: scroll;
}
#child {
width: 100px;
height: 100px;
background: green;
margin: 50px;
border: 60px solid red;
padding: 50px;
/*box-sizing: border-box;*/
}
</style>
</head>
<body>
<div id="parent">
<div id="child">
黄色部分为子元素,方便查看父节点内容区域,黄色部分为子元素,方便查看父节点内容区域,
</div>
</div>
<script>
const element = document.getElementById("child");
console.log("clientWidth:", element.clientWidth);
console.log("clientHeight:", element.clientHeight);
console.log("clientLeft:", element.clientLeft);
console.log("clientTop:", element.clientTop);
</script>
</body>
</html>
<!--输出结果-->
clientWidth: 200 Offset.html:41:15
clientHeight: 200 Offset.html:42:15
clientLeft: 60 Offset.html:43:15
clientTop: 60 Offset.html:44:15
可以读取或设置元素滚动条到元素左边的距离
可以获取或设置一个元素的内容垂直滚动的距离
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>获取元素尺寸</title>
<style>
body {
background: #f1f1f1;
margin: 0;
}
#parent {
width: 400px;
height: 400px;
/*消除 margin-top问题*/
padding-top: 1px;
background: lightgray;
position: relative;
margin: 50px;
border: 50px solid blue;
}
#child {
width: 100px;
height: 100px;
background: green;
margin: 50px;
border: 60px solid red;
padding: 50px;
overflow-y: scroll;
}
#child::before {
content: "\A\A\A";
width: 100px;
}
</style>
</head>
<body>
<div id="parent">
<div id="child">
黄色部分为子元素,方便查看父节点内容区域,黄色部分为子元素,方便查看父节点内容区域,
</div>
</div>
<script>
const element = document.getElementById("child");
console.log("scrollWidth:", element.scrollWidth);
console.log("scrollHeight:", element.scrollHeight);
console.log("scrollTop:", element.scrollTop);
console.log("scrollLeft:", element.scrollLeft);
element.scrollTop = 10;
console.log("scrollTop:", element.scrollTop);
element.addEventListener("scroll", (e) => {
console.log("scrollTop:", element.scrollTop);
});
console.log("offsetHeight:", element.clientHeight);
if (element.scrollHeight > element.clientHeight) {
console.log("内容溢出,需要滚动");
}
</script>
</body>
</html>
参考链接
前言: 首先在开发前需要了解JS是没有提供直接操作Email的接口,所以我们只能通过JS操作第三方的接口来web前端的邮件发送功能,下面列举能够在通过前端实现邮件发送的几种方式:方式一:&lt;a href="mailto:[email protected]?subject=test&amp;[email protected]&amp;body=use mailto sample"&gt;sen...
LeetCode 102. 二叉树的层序遍历题目:解题方法:方法1:DFS(递归)Java实现题目:LeetCode 102. 二叉树的层序遍历给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。示例:二叉树:[3,9,20,null,null,15,7],3/ 9 20/ 15 7返回其层次遍历结果:[[3],[9,20],[15,7]]解题方法:方法1:DFS(递归)Java实现/** * Definiti
题意分析:这道题考察的知识点就是数据结构的笛卡尔树,一下是我从网上找的有管笛卡尔树的一些介绍:1. 笛卡尔树(key,value):在(解决范围搜索的集合)数据结构问题时提出的,从数列中构造一棵笛卡尔树可以线性时间完成。它具有堆的有序性,中序遍历可以输出原数列。笛卡尔树的性质1. 节点一一对应于数列元素2. 中序遍历笛卡尔树即可得到原数列3. 树结构
1.配置环境做这次的小项目使用到的语言是java,当然eclipse是必不可少的,另外还需要用到的有Tomcat,MySQL,mysql-connector-java的bin包和Navicat。其实Navicat可以不装,但是为了更方便看到我们的数据库,还是建议装一下。这里介绍一下Tomcat和mysql-connector-java的bin包的配置。Tomcat的配置 这里为了防
# encoding: utf-8# module pyrealsense2.pyrealsense2# from D:\Yolov3_Tensorflow\python\lib\site-packages\pyrealsense2\pyrealsense2.cp36-win_amd64.pyd# by generator 1.147"""LibrealsenseTM Python Bi...
复制 http://mybatis.org/dtd/mybatis-3-mapper.dtd点击myeclipse 的 window preferecxes
安装ssh,然后用客户端似的界面远程手动拖动即可。
(1)对象作为参数执行插入 Person"> insert ignore into tb_person_${tbIndex} (uid,name ) values(#{person.uid,jdbcType=INTEGER},#{person.name,jdbcType=VARCHAR})此时,如果表中有和属性对应的id字段,在插入动作返回后,会
GUID *LPGUID; //GUID 是一个结构体LPGUID Class;Class.Data1=0x745a17a0;其中最后一句老是出现 Class表达式必须包含类类型 的错误,后来搜了一下发现改成Class-&gt;Data1=0x745a17a0; 就可以了两者的区别:1、A.B则A为对象或者结构体;2、A-&gt;B则A为指针,-&gt;是成员提取,A-&gt;...
在项目开发中,有时会遇到需要按某个字符拆分列数据的情况,本文详细介绍 postgre 数据库拆分字符(regexp_split_to_table)以及实际项目应用。
python微信数据解密-dat文件转图片(JPG,PNG,GIF,附可执行文件exe)dat文件路径 (确保有路径,或自己修改)into_path = r'C:\image' # 微信image.dat文件路径 输出图片路径out_path = r"C:\image\jpg\\"直接上代码# weixin_Image.dat 破解# JPG 16进制 FF D8 FF# PNG 16进制 89 50 4e 47# GIF 16进制 47 49 46 38# 微信.b
点击上方“小强的进阶之路”,选择“星标”公众号优质文章,及时送达预计阅读时间: 9分钟领域和子域在很长一段时间里,我们认为技术是主导项目成功的关键因素,这种关键因素通常表现在项目使用的编程...