国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

js控制的遮罩層實例介紹

2019-11-20 22:40:45
字體:
來源:轉載
供稿:網友
閑來無事,把項目里很土的彈窗,改成了遮罩層顯示,感覺效果好點了。上代碼:
父頁面:
復制代碼 代碼如下:

<div id='newDiv1' style="display: none;">
<%@include file='/WEB-INF/jsp/infobackup/martyr/printCertDia.jsp' %>
<%--<jsp:include page="/WEB-INF/jsp/infobackup/martyr/printCertDia.jsp" flush=”true”/> --%>
</div>

printCertDia.jsp 便是要顯示的最上層jsp. 如果用jsp:include 頁面便會報錯,至于為什么還沒研究,可能和加載順序有關。
(在給標簽變量取名字時候,如果變量和id名一樣時候,js也會報錯,要避免)
在父頁面添加觸發顯示遮罩層js:
在這里創建一個div和body一樣大小,這樣就可以把整個頁面全部蓋住了。
style.zIndex 來控制覆蓋的先后順序(層級)
style.filter ,style.opacity 控制顯示透明°。
復制代碼 代碼如下:

//mask遮罩層
var newMask = document.createElement("div");
newMask.id = m;
newMask.style.position = "absolute";
newMask.style.zIndex = "1";
_scrollWidth = Math.max(document.body.scrollWidth, document.documentElement.scrollWidth);
_scrollHeight = Math.max(document.body.scrollHeight, document.documentElement.scrollHeight);
newMask.style.width = _scrollWidth + "px";
newMask.style.height = _scrollHeight + "px";
newMask.style.top = "0px";
newMask.style.left = "0px";
newMask.style.background = "#666";
newMask.style.filter = "alpha(opacity=40)";
newMask.style.opacity = "0.40";
document.body.appendChild(newMask);

js控制父頁面已經定義好的div顯示:
復制代碼 代碼如下:

newDiv=document.getElementById("newDiv1");
// var newDiv = document.createElement("div");
// newDiv.id = _id;
newDiv.style.position = "absolute";
newDiv.style.zIndex = "9999";
newDivWidth = 700;
newDivHeight = 600;
newDiv.style.width = newDivWidth + "px";
newDiv.style.height = newDivHeight + "px";
newDiv.style.top = (document.body.scrollTop + document.body.clientHeight / 2 - newDivHeight / 2) + "px";
newDiv.style.left = (document.body.scrollLeft + document.body.clientWidth / 2 - newDivWidth / 2) + "px";
newDiv.style.background = "#F7F7EF";
newDiv.style.border = "1px solid #860001";
newDiv.style.padding = "5px";
newDiv.style.display='';

js控制父頁面div滾動居中:
attachEvent ,addEventListener 對scroll 添加處理事件 newDivCenter
復制代碼 代碼如下:

function newDivCenter() {
newDiv.style.top = (document.body.scrollTop + document.body.clientHeight / 2 - newDivHeight / 2) + "px";
newDiv.style.left = (document.body.scrollLeft + document.body.clientWidth / 2 - newDivWidth / 2) + "px";
}
if (document.all) {
window.attachEvent("onscroll", newDivCenter);
}
else {
window.addEventListener('scroll', newDivCenter, false);
}

動態給父頁面div添加關閉圖層和遮罩層(需要修改):
復制代碼 代碼如下:

var newA = document.createElement("a");
newA.href = "#";
newA.innerHTML = "關閉";
newA.onclick = function() {
if (document.all) {
window.detachEvent("onscroll", newDivCenter);
}
else {
window.removeEventListener('scroll', newDivCenter, false);
}
document.body.removeChild(docEle("newDiv1"));
document.body.removeChild(docEle(m));
document.getElementById("certImg").style.display='';
return false;
}
newDiv.appendChild(newA);
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长阳| 五华县| 郸城县| 成武县| 二连浩特市| 大同县| 宝丰县| 高淳县| 南木林县| 新郑市| 肥西县| 灌南县| 安吉县| 宜丰县| 潼南县| 台东市| 武川县| 遂溪县| 城口县| 盱眙县| 香港| 岐山县| 泸定县| 商河县| 伊通| 鸡东县| 拉孜县| 定安县| 藁城市| 公安县| 天镇县| 社会| 镇赉县| 会同县| 屏东市| 大新县| 东海县| 儋州市| 区。| 孟津县| 卢龙县|