碎片知识点-01
来源:互联网 发布:淘宝买ps3是新机吗 编辑:程序博客网 时间:2024/06/05 14:47
JavaScript博客
- div内文本水平居中
- offsetWidth和width
- script方法调用传参
- offset在运动中的bug
div内文本水平居中:line-height 设置为div的height;
CSS内 line-height:行高;
设置div内内容水平居中,若div内有n行,则设置
line-height:div的width/n.
<style type="text/css"> #div1{width:300px; height:300px; border:1px solid black; text-align:center; line-height:300px; } </style> <div id="div1"> 文本内容水平居中 </div>
JavaScript中offsetWidth等和js直接获取元素的Width区别:
<style type="text/css">#div3{width:100px; height:100px; background:#ccc; float:left; padding:20px; border:10px solid; }</style> <script type="text/javascript"> <!-- var oDiv3=document.getElementById("div3"); console.log("Width="+getComputedStyle(oDiv3,null)["width"] ); // return oDiv3.currentStyle.width; // IE //--> </script>
小结:以width为例,js直接获取的元素是样式中设置的width,offsetWidth获取的width=this.padding*2+this.border*2+this.width。
方法在script内直接调用的处理方法:
<body> <div id="div"> </div></body><script> function fName(param){ console.log("运行函数"); } var oDiv=document.getElementById("div"); // 如果无参数直接写函数名即可,不会在script中直接调用函数 // oDiv.onclick=fName; // 如果有参数,如下方式会在script中直接调用,无论是否触发事件 // oDiv.onclick=fName(参数); //处理方法:将事件放在匿名函数中即可 oDiv.onclick=function(){ fName(参数); }</script>
offset在运动中的bug
以下代码预期目标:div的width变窄。【忽略padding,使其为零】
①当div的border>=1,此代码使div的width变大;
②当div的border=0,此代码使div的width变小。
<body> <style type="text/css"> div{height:100px; background:red; line-height:50px; border:1px solid;} </style> <div id="d1" style="width:200px;"> 当div的border>=1,div变宽 当div的border=0, div变窄 </div> </body> <script type="text/javascript"> <!-- var d1=document.getElementById("d1"); var timer; function move(obj){ timer=setInterval(function(){ obj.style.width=obj.offsetWidth-1+"px"; },30); } // move d1.onmouseover=function(obj){ move(this); }; d1.onmouseout=function(){ clearInterval(timer); } //--> </script>
注:offserWidth包含了div的border及padding,所以当border=1时,div.offsetWidth-parseInt(div.style.width)=2,那么【obj.style.width=obj.offsetWidth-1+”px”;】这行代码则使div的width变大。小结:运动中慎用offsetWidth。
1 0
- 碎片知识点-01
- android碎片知识点
- 【HTML】碎片知识点-02
- Android~Fragment~碎片化知识点
- Python碎片小知识点总结
- react dva 碎片01
- 碎片
- 碎片
- 碎片
- 碎片
- 碎片
- 碎片
- 碎片
- 碎片
- 看内核需要的一些语法知识点以及碎片
- 程序碎片-01背包递归
- 内部碎片 && 外部碎片
- 内部碎片 外部碎片
- Java面试题集(五)
- web.鼠标.阻止冒泡
- Node.js 适配器模式
- Svn环境搭建
- 虚拟机下三种网络模式
- 碎片知识点-01
- 一些linux的实用小知识
- AngularJS的常见指令,来看看你知道几个嘞
- Find Mode in Binary Search Tree
- 线性表篇之顺序表
- JavaScript变量提升
- JavaScript学习笔记
- vim 常用命令
- clippingNode 新手引导