JavaScript 遮罩層-透明 -- 動態在dom節點上添加透明遮罩層

動態在dom節點上添加透明遮罩層
1.獲取dom節點距離瀏覽器上邊和左邊的距離,即offsetTop和offsetLeft
2.使用offsetWidth,offsetHeight獲取dom節點實際的寬和高,即使dom節點的樣式中有padding和border
3.使用dom.style.cssText給節點增加樣式

<script>
functionsetMask(dom,opacity) {
//        先獲取傳入節點距離window的距離
var left = dom.offsetLeft;
var top = dom.offsetTop;
var width = dom.offsetWidth;
var height = dom.offsetHeight;
var opacity = opacity ||0.2;
var newElem =document.createElement("div");
newElem.style.cssText="width:200px;height:200px;left:"+left+"px;top:"+top+"px;opacity:"+opacity+";background-color:#fff;"
document.getElementsByTagName('body')[0].appendChild(newElem);
}
var target =document.getElementById('box');
setMask(target,0.3);
</script>

效果圖:
底層盒子是粉色的,有一個黑色的邊框

無遮罩.jpg

加入白色遮罩

遮罩層.jpg
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容