layer如何打开/关闭动画
小编给大家分享一下layer如何打开/关闭动画,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
1. 打开窗口时,支持自定义或者第三方动画
打开layer.js,定位到函数:Class.pt.creat ,
找到代码:
//为兼容jQuery3.0的css动画影响元素尺寸计算 if(doms.anim[config.anim]){ varanimClass='layer-anim'+doms.anim[config.anim]; that.layero.addClass(animClass).one('webkitAnimationEndmozAnimationEndMSAnimationEndoanimationendanimationend',function(){ $(this).removeClass(animClass); }); }
修改为(此处只是针对css动画库animate):
//为兼容jQuery3.0的css动画影响元素尺寸计算 if(doms.anim[config.anim]){ varanimClass='layer-anim'+doms.anim[config.anim]; that.layero.addClass(animClass).one('webkitAnimationEndmozAnimationEndMSAnimationEndoanimationendanimationend',function(){ $(this).removeClass(animClass); }); }else{ //支持自定义的,或者第三方弹出动画 varanimClass=config.anim; varanimated='animated'; that.layero.addClass(animated); that.layero.addClass(animClass).one('webkitAnimationEndmozAnimationEndMSAnimationEndoanimationendanimationend',function(){ $(this).removeClass(animClass); $(this).removeClass(animated); }); }
至此,layer便可支持其他弹出动画。
2.关闭窗口时,支持自定义或者第三方动画(layer.open时需传入新增参数:closeAnim)
打开layer.js
定位到函数:Class.pt.config
新增参数:
closeAnim: 'layer-anim-close',
定位到函数:Class.pt.creat
找到代码:
//记录关闭动画 if(config.isOutAnim){ that.layero.data('isOutAnim',true); }
修改为:
//记录关闭动画 if(config.isOutAnim){ that.layero.data('isOutAnim',true); that.layero.data('closeAnim',config.closeAnim); }
定位函数到:layer.close
找到代码:
if(layero.data('isOutAnim')){ layero.addClass('layer-anim'+closeAnim); } $('#layui-layer-moves,#layui-layer-shade'+index).remove(); layer.ie==6&&ready.reselect(); ready.rescollbar(index); if(layero.attr('minLeft')){ ready.minIndex--; ready.minLeft.push(layero.attr('minLeft')); } if((layer.ie&&layer.ie<10)||!layero.data('isOutAnim')){ remove() }else{ setTimeout(function(){ remove(); },200); }
修改为:
if(layero.data('isOutAnim')){ if(layero.data("closeAnim")===closeAnim){ layero.addClass('layer-anim'+closeAnim); }else{ layero.addClass(layero.data("closeAnim")+'animated').one('webkitAnimationEndmozAnimationEndMSAnimationEndoanimationendanimationend',function(){ $('#layui-layer-moves,#layui-layer-shade'+index).remove(); remove(); }); } } if(layero.data("closeAnim")===closeAnim){ $('#layui-layer-moves,#layui-layer-shade'+index).remove(); layer.ie==6&&ready.reselect(); ready.rescollbar(index); if(layero.attr('minLeft')){ ready.minIndex--; ready.minLeft.push(layero.attr('minLeft')); } if((layer.ie&&layer.ie<10)||!layero.data('isOutAnim')){ remove() }else{ setTimeout(function(){ remove(); },200); } }
以上是“layer如何打开/关闭动画”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注恰卡编程网行业资讯频道!
推荐阅读
-
在Python中,将K添加到列元组列表中的最小元素
处理数据集涉及识别特定列中的最小值并通过添加常量值(K)来更新它。通过实施优化的解决方案,我们可以有效地执行此操作,这对于数据...
-
使用switch case语句编写的C程序,用于计算几何图形的面积
#includevoidmain(){intfig_code;floatside,base,length,...
-
如何使 C# 代码可重用?
要在C#中使代码可重用,请使用接口。接口定义属性、方法和事件,这些成员是接口的成员。接口只包含成员的声明。派生类负责定义成员。这通...
-
C# 中的覆盖和隐藏有什么区别?
方法隐藏在C#中也称为隐藏。父类的方法可供子类使用,无需在遮蔽中使用override关键字。子类有其自己版本的相同函数。在...
-
在Java中使用示例双倍longValue()函数
Java是一种强大的面向对象语言,可以对各种数据类型进行高度的控制和精确度。其中一种功能是doublelongValue(),...
-
如何在Java中定义JSON字段名称的命名约定?
TheFieldNamingPolicycanbeusedtodefineafewstandardnaming...
-
Servlet中的HttpSession接口
在JavaWeb开发领域,了解HttpSession接口是创建动态和响应式Web应用程序的关键。在本文中,我们将探讨...
-
使用while循环查找自然数之和的Java程序
自然数之和可以使用编程语言中的不同迭代语句来计算。迭代语句是执行一组特定代码行直到循环语句中的条件失败的语句。在本文中,我们将讨论...
-
我们可以将Java数组转换为列表吗?
我们可以使用Arrays.asList()方法轻松地将Java数组转换为List。语法publicstaticLi...
-
Java中如何在不使用任何外部库的情况下读取网页内容?
TheURLclassofthejava.netpackagerepresentsaUniformResour...