重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
offset 自己的
站在用户的角度思考问题,与客户深入沟通,找到信州网站设计与信州网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、成都网站制作、企业官网、英文网站、手机端网站、网站推广、域名注册、网页空间、企业邮箱。业务覆盖信州地区。
目的: js中有一套方便的获取元素尺寸的办法就是offset家族;
div { width:220px; border-left:2px solid red; padding:10px;}
div.offsetWidth = 220 + 2 + 20
为什么不用 div.style.width 因为东西 只能得到行内的数值
如果 父级 都没有定位则以body 为准
这里的父级指的是所上一级 不仅仅指的是 父亲 还可以是 爷爷 曾爷爷 曾曾爷爷。。。。
offsetParent返回该对象的父级 (带有定位) 不一定是亲的爸爸
前面学过一个返回父亲(亲的) parentNode 有所区别
如果当前元素的父级元素没有进行CSS定位(position为absolute或relative),offsetParent为body。
如果当前元素的父级元素中有CSS定位(position为absolute或relative),offsetParent取最近的那个父级元素。
1.最大区别在于 offsetLeft 可以返回没有定位盒子的距离左侧的位置。 而 style.top 不可以 只有定位的盒子 才有 left top right
2.offsetTop 返回的是数字,而 style.top 返回的是字符串,除了数字外还带有单位:px。
3.offsetTop 只读,而 style.top 可读写。
4.如果没有给 HTML 元素指定过 top 样式,则 style.top 返回的是空字符串。
5.最重要的区别 style.left 只能得到 行内样式 offsetLeft 随便
我们学过一些事件 : onmouseover onmouseout onclick .....
event 单词翻译过来 事件 的意思
event 就是事件的对象 指向的是 事件 是 onclick
在触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含着所有与事件有关的信息。所有浏览器都支持event对象,但支持的方式不同。
比如鼠标操作时候,会添加鼠标位置的相关信息到事件对象中。
普通浏览器支持 event
ie 678 支持 window.event
是以我们的 电脑屏幕 为基准点 测量
以我们的 文档 (绝对定位) 的基准点 对齐
ie678 不认识
以 可视区域 为基准点 类似于 固定定位
onmouseover onmouseout onclick
onmousemove 当鼠标移动的时候 就是说,鼠标移动一像素就会执行的事件
div.onmousemove = function() { 语句 }
当鼠标再div 身上移动的时候,就会执行。
他们相同点 都是 经过 div 才会触发
div.onmouseover 只触发一次
div.onmousemove 每移动一像素,就会触发一次
onmouseup 当鼠标弹起
onmousedown 当鼠标按下的时候
1.拖动 原理 == 鼠标按下 接着 移动鼠标 。
bar.onmousedown = function(){
document.onmousemove = function(){
}
}
2.当我们按下鼠标的时候,就要记录当前 鼠标 的位置 - 大盒子的位置
算出 bar 当前 在 大盒子内的距离 。
我们知道 按下鼠标然后拖拽可以选择文字 的。
清除选中的内容
offset 自己的 偏移
offsetWidth 得到自己的宽度
offsetHeight
构成 : width + padding + border
div width 200 border 3px padding-right: 15px
div offsetWidth = 200 + 6 + 15 = 221
◆ offsetLeft 和 offsetTop
div.offsetLeft
得到距离 这个 div 最近的 带有定位的 父 盒子 左边距离
◆ offsetParent 返回自己的父亲元素 (带有定位的)
parentNode 这个返回亲父亲 不管父亲是否带有定位
◆ style.top 和 offsetTop
offsetTop 只读 只可以得到结果 但是不能赋值
style.top 能得到 (行内式 ) 但是可以给值
style.top 得到的是 25px
offsetTop 得到的是 25
◆ 事件对象 event
div.onclick = function(event) { } event 是点击的事件对象
event 集合点击事件的相关信息
pageX 文档的 参考点
clientX 可视区域
ScreenX 屏幕
◆ 常用事件
onmouseover 经过
onmouseout 离开
onmousemove 鼠标移动
var num = 0;
div.onmouseover = function() { num++; console.log(num))} 1
div.onmousemove = function() { num++; console.log(num))}
onmousedown 按下鼠标
onmouseup 弹起鼠标
拖拽: 先按下鼠标 然后 移动鼠标
bar.onmousedown = funtion() {
document.onmousemove = function() {}
}
最大 window 对象 document对象
今日案例:筋斗云、点击跟随鼠标、放大镜案例素材获取
链接:
密码:homu
金属王朝:时尚,潮流.爱音乐,
诞生于2010年1月27日,由中国MC大嘴和时尚达人邱雨晨联合创建。
金属王朝一个多么优雅而又霸气的家族名。家族代表性符号:JS王朝〃
相信自己、相信金属王朝、
相信我们的明天。相信2010的黑马冠军属于≤金属王朝≥。
我们的审核群号是:76922229(7*24小时专人在线审核、无需等待。)
家族最高统治者:MC大嘴、邱雨晨。
我们现在在当今潮流最前线 继续开辟属于我们自己的路 打造我们的 打造我们的另类风格.
我们是80 90年代的 时尚潮流家族 我们不安于停止目前的现状. 我们要玩出自己的个性来
我们年轻.时尚.充满活力.积极进取.我们要在网络中树立一个好的形象. 在大家心中崇拜者
2010年2月23号,家族进行了大整顿。
家族已经实施高层内招,进家族的一律成员,在家族待2个星期的均可申请应聘高层。
家族建立以来,第一批高层被解除高层职位。
金属(js)王朝家族未来的路无可估量. 我们不模仿任何家族 .完全靠自己的去发展
VBScript目前主要用在ASP,这是一种后台脚本语言,在需要开发具有后台功能的网站时才需用到;而目前几乎所有浏览器都把Javascript定为默认的前端脚本语言,甚至可以说Javascript是目前唯一的前端脚本语言了,由于它是直接面向用户的,因此使用范围更广,而且Javascript也可以做后台脚本用,因此目前学习Javascript才是王道。
VBScript也可以做前端脚本,但只有IE内核的浏览器才支持。如果你真想学VBScript,你买关于ASP的书就行了。另外也可以学VB、VBS、VBA等等,它们和VBScript是同一家族的,语法基本一样,一通百通。此外,按键精灵也是以VBScript为基础的。