js实现遮盖层划出效果-------Day77
来源:互联网 发布:淘宝三唑仑网上什么卖 编辑:程序博客网 时间:2024/05/01 17:52
同遮盖层划入一样,单纯的遮盖层划出的话算的上是非常简单了,但是在这里它却就不这么简单了,而且我前面还选了个比较麻烦的生成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;}
就这样简单的都实现了划出划入的效果,简单的看的话确实已经有其形了,但是不得不说,这是个拙劣到了极点的实现,还有多少点是还没有加入的,还有多少情况是还没有考虑到的,另外,这代码的重复编写,优化优化,喏喏...
0 0
- js实现遮盖层划出效果-------Day77
- html页面中js添加遮盖层实现等待效果
- javascript 实现遮盖层效果
- 操作等待效果,遮盖层js
- CSS+JQUERY实现遮盖层效果
- JS动态实现遮盖网页效果
- JS弹出对话框_JS弹出层遮盖效果_JS弹出一个层并且后面有遮盖
- js 遮盖层
- js遮盖层
- JavaScript实现页面遮盖层(带动画效果)
- JS(十九)遮盖层
- div效果很好的遮盖层效果
- div效果很好的遮盖层效果
- div效果很好的遮盖层效果
- div效果很好的遮盖层效果
- asp.net弹出层效果,遮盖背景,能实现在弹出层上操作数据
- js 实现拖动层效果
- Android Dialog去除蒙层/遮盖效果
- 单源最短路径dijkstra算法的初步学习(1)
- 点发货是地方广东省根深蒂固
- PXE多winpe启动
- 全面介绍Windows内存管理机制及C++内存分配实例(六):堆栈
- windows dll 和 Linux so 的异同
- js实现遮盖层划出效果-------Day77
- 付电话费各家各户开个会看好了
- Android Service 的使用
- 的高度符合非国家工行卡
- 关于论坛数据库的设计(分表分库等-转)
- Oracle总结
- Java之内存模型记忆碎片
- POJ 3280 Cheapest Palindrome (DP)
- 比较准确的堆栈(heap/stack)区别描述