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

首頁 > 編程 > JavaScript > 正文

js實現遮罩層劃出效果是生成div而不是顯示

2019-11-20 14:19:22
字體:
來源:轉載
供稿:網友

同遮蓋層劃入一樣,單純的遮蓋層劃出的話算的上是非常簡單了,但是在這里它卻就不這么簡單了,而且我前面還選了個比較麻煩的生成div,而不是顯示存在的div,這里有那么幾點需要特別注意:

1、遮蓋層出現后,鼠標哪怕不動,也已經是在遮蓋層上,已經不再給出的div區域了,所以注意監聽的位置;

2、onmouseout和onmouseover都是瞬時觸發的,這點很重要;

3、在實際應用中,已存在的div的顯示比臨時創建肯定要有效的多;

這樣我還是上一下代碼吧,其實之前的地方沒怎么變,我只記錄改變的地方,那就是onmouseout監聽加在了哪呢?

var getOneDiv=function(){ var div=document.createElement("div"); div.style.position="absolute"; div.style.display="block"; div.style.zIndex="10"; div.style.background="yellow"; div.addEventListener("mouseout",function(event){//我把它加在了這里,而這里監聽的判斷與之前的劃入幾乎如出一轍 var x=event.clientX; var y=event.clientY; left=x-test.offsetLeft; top=y-test.offsetTop; right=test.offsetLeft+test.offsetWidth-x; bottom=test.offsetTop+test.offsetHeight-y; arr=[]; arr.push(top); arr.push(right); arr.push(bottom); arr.push(left); var least=findLeast(arr); if(least==1){ } if(least==2){//還是距離和寬度的同時改變啊 div.style.left=test.offsetLeft+"px"; div.style.top=test.offsetTop+"px"; div.style.height=test.offsetHeight+"px"; div.style.width=width+"px"; var changeWidth2=setInterval(function(){ if(div.offsetLeft>=test.offsetLeft+test.offsetWidth){ clearInterval(changeWidth2); check=true;//關鍵點 }else{ marginLeft=marginLeft+10; width=width-10; div.style.width=width+"px"; div.style.left=marginLeft+"px"; } },30); } if(least==3){ } if(least==4){//向左劃出,width作為全局變量,這次就是不斷減小了 div.style.left=test.offsetLeft+"px"; div.style.top=test.offsetTop+"px"; div.style.height=test.offsetHeight+"px"; div.style.width=width+"px"; var changeWidth1=setInterval(function(){ if(div.offsetWidth<=0){ clearInterval(changeWidth1); check=true;//這里也比較關鍵哦 }else{ width=width-10; div.style.width=width+"px"; } },30); } }) return div; }

就這樣簡單的都實現了劃出劃入的效果,簡單的看的話確實已經有其形了,但是不得不說,這是個拙劣到了極點的實現,還有多少點是還沒有加入的,還有多少情況是還沒有考慮到的,另外,這代碼的重復編寫,優化優化,喏喏...

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 武定县| 扬州市| 仁寿县| 莱西市| 九龙坡区| 秭归县| 论坛| 北海市| 隆德县| 图片| 裕民县| 丰城市| 南昌市| 台中市| 合阳县| 正宁县| 清涧县| 西林县| 朝阳县| 元阳县| 安阳市| 遂昌县| 慈利县| 湄潭县| 长葛市| 长垣县| 青海省| 苍溪县| 沽源县| 尚志市| 贵港市| 彭水| 玉屏| 油尖旺区| 连江县| 越西县| 商丘市| 洪湖市| 富民县| 宿州市| 景谷|