面试总结1

沉寂了一年多,出去活动活动还是有很多好处的,不管是对自己的技能的了解还是面试经验。

  1.使用js获取网页页面的绝对位置

function getElementLeft(element){
         var actualLeft = element.offsetLeft;
         var current = element.offsetParent;
         
         while(current != null){
           ctualLeft += current.offsetLeft;
           current = current.offsetParent;
         }
         return actualLeft;

}


function getElementTop(element){ var actualTop = element.offsetTop; var current = element.offsetParent; while(current != null){ actualTop += current.offsetTop; current = current.offsetParent; } return actualTop; }

  3.触发haslayout的属性:width,heith,float。。。。。

  http://www.cnblogs.com/wine/p/4599819.html

  4.判断一个对象是否包含自定义属性而不是原型链上的属性:hasOwnProperty方法

    http://www.cnblogs.com/sanshi/archive/2011/03/15/1985344.html

  5.  左右两个DIV高度较低与较高的高度DIV一致,用css实现:  

 1 <div id="mm">
 2       <div id="m1">sss</div>
 3       <div id="m2">
 4           qqqqqqqqqqqqq<br> 
 5           qqqqqqqqqqqq<br>
 6           qqqqqqqqqqqq<br>
 7           qqqqqqqqqqqq<br>
 8           qqqqqqqqqqqq<br>
 9           qqqqqqqqqqqq<br>
10           qqqqqqqqqqqq
11        </div>
12 </div>
 1 #mm{
 2         margin: 0 auto;
 3         width: 1200px;
 4         overflow: hidden;
 5     }
 6     #m1,#m2{
 7         float: left;
 8         width: 500px;
 9         margin-bottom: -99999px;
10         padding-bottom: 99999px;
11     }
12     #m1{
13         border:1px solid green;
14     }
15     #m2{
16         border:1px solid red;
17     }

js

document.getElementById("m1").style.height= document.getElementById("m2").offsetHeight + 'px';

5.解释一下事件委托

  事件处理程序过多的问题的解决办法是用“事件委托”。事件委托利用了事件冒泡,只指定一个事件处理程序,就可以管理某一类型的所有事件。

click事件会一直冒泡到document层次,利用事件委托可以为整个指定一个onclick事件处理程序,而不必给每个可点击的元素分别添加事件。

其实就是在DOM树种尽量给最高层次上添加一个事件处理程序。

原文地址:https://www.cnblogs.com/wine/p/5505211.html