javascript 动态创建一个遮盖层

      用javascript 动态创建一个遮盖层,当鼠标移动到上面动态创建出一个遮盖层,当鼠标离开时遮盖层不显示。

    这个方法当屏幕滚动时,可以依然跟着鼠标显示!

    

    

function createTB() {
var tt = "<table border='1px' width='300px'><tr><td>wwww</td><td>wwww</td><td>wwww</td></tr><tr><td>wwww</td><td>wwww</td><td>wwww</td></tr><tr><td>wwww</td><td>wwww</td><td>wwww</td></tr></table>";


var e = event || window.event;
var scrollX = document.documentElement.scrollLeft || document.body.scrollLeft;
var scrollY = document.documentElement.scrollTop || document.body.scrollTop;
var x = e.pageX || e.clientX + scrollX; //找到当前鼠标的位置的X坐标
var y = e.pageY || e.clientY + scrollY; //找到当前鼠标的位置的Y坐标

openNewDiv(tt, "block", x,y);

}

    

var docEle = function () {
    return document.getElementById(arguments[0]) || false;
}
    //mask遮罩层
      function openNewDiv(tabled, displays,x,y) {
      var m = "mask";
     if (docEle(m)) document.body.removeChild(docEle(m));

     

    var newMask = document.createElement("div");
    newMask.id = m;
    newMask.style.position = "absolute";
    //newMask.style.zIndex = "1";

    newMask.style.width = "200px";
   //newMask.style.height = (_scrollHeight - 20) + "px";

    var e = event || window.event;

 

 

    newMask.style.top = y + "px";
    newMask.style.left =x + "px";
    newMask.style.background = "#e8e8e8";

    if (displays == "block") {
     newMask.style.display = "block";
}
else {

    newMask.style.display = "none";
}

   newMask.innerHTML = tabled;

   document.body.appendChild(newMask);


}

 <input type="button" value="create"  onmousemove="createTB()" onmouseleave="createTBs()" />

posted @ 2013-07-04 17:34  apecoder  阅读(538)  评论(0编辑  收藏  举报