这次给大家带来简单的jquery点击水纹波动动画示例,用jquery做出点击水纹波动画注意事项有哪些,下面就是实战案例,一起来看一下。
jquery点击水纹波动动画原理:
1.在需要实现水波纹效果的标签中添加a73a4c53807fcaa1efad9bb23ddc5bbfda7a5c458c43e8ac4398bd2378cdb6be
2.代码会定位 鼠标相对 与 标签的位置,以鼠标点为圆心画圆
3.圆的半径 可以自定义(默认为标签的最大宽或高度)
4.圆点颜色,和动画时间等可以自行修改内部代码,或直接 调用 $().css({})方法 进行覆盖
--封装示例地址: http://daxianshiyanshi.sinaapp.com/data/jsdata/2016-4-8/ripplewrapperdemo1/index1.html
-- 未封装示例地址: http://daxianshiyanshi.sinaapp.com/data/jsdata/2016-4-8/ripplewrapperdemo1/indexlod.html
$(function(){
$(".ripple-wrapper").css(
{
"position": " absolute",
"top": " 0",
"left": " 0",
"z-index": " 1",
"width": " 100%",
"height": " 100%",
"overflow": " hidden",
"border-radius": " inherit",
"pointer-events": " none"
});
$(".ripple-wrapper").parent().click(function(e){
var ripple_obj=$(this).find(".ripple-wrapper");
if(ripple_obj.find("div").length){ripple_obj.find("div").remove();}
ripple_obj.prepend("<div></div>");
var ripple_div=ripple_obj.find("div");
ripple_div.css(
{
"display": " block",
"background": " rgba(255, 255, 255, 0.7)",
"border-radius": " 50%",
"position": " absolute",
"-webkit-transform": " scale(0)",
"transform": " scale(0)",
"opacity": " 1",
"transition": " all 0.7s",
"-webkit-transition": " all 0.7s",
"-moz-transition": " all 0.7s",
"-o-transition": " all 0.7s",
"z-index": " 1",
"overflow": " hidden",
"pointer-events": " none"
});
var r= parseint(ripple_obj.outerwidth());/*默认半径为ripple-wrapper宽*/
if(parseint(ripple_obj.outerwidth())<parseint(ripple_obj.outerheight())){
r= parseint(ripple_obj.outerheight());/*如果高度大于宽半径为ripp,le-wrapper高*/
}
ripple_div.css({"width":(r*2)+"px","height":(r*2)+"px","top": (e.pagey -ripple_obj.offset().top - r)+'px', "left": ( e.pagex -ripple_obj.offset().left -r)+'px',"transform":"scale(1)", "-webkit-transform":"scale(1)","opacity":"0"});;
});
});
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>document</title>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-2.1.4.min.js"></script>
<script src="ripple-wrapper.js"></script>
<style>
.ck {
cursor: pointer;
display: block;
padding: 1em;
text-decoration: none;
width: 200px;
height: 20px;
position: relative;
overflow: hidden;
color: #fff;
}
</style>
</head>
<body >
<div class="ck" style="background: #5f5f5f">
点一下
<div class="ripple-wrapper"></div>
</div>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>document</title>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-2.1.4.min.js"></script>
<style>
.ck {
background: #ffab91;
display: block;
padding: 1em;
text-decoration: none;
width: 200px;
height: 20px;
position: relative;
overflow: hidden;
}
.ck .bd {
background: rgba(0, 0, 0,0.8);
border-radius: 50%;
width: 0px;
height: 0px;
position: absolute;
-webkit-transform: scale(0);
transform: scale(0);
opacity: 1;
}
.dh {
animation: ldm 0.8s ;
-moz-animation: ldm 0.8s ;
-o-animation: ldm 0.8s ;
-webkit-animation: ldm 0.8s ;
}
@-webkit-keyframes ldm {
100% {
-webkit-transform: scale(1);
opacity: 0
}
}
@keyframes ldm {
100% {
-webkit-transform: scale(1);
opacity: 0
}
}
</style>
</head>
<body style=" background: #aaab91;">
<div class="ck">
<span class="bd"></span> adasdsd
</div>
<script>
$(".ck").click(function(e){
$(this).find(".bd").removeclass("dh");
var r=6;
r= parseint($(this).outerwidth());
if(parseint($(this).outerwidth())<parseint($(this).outerheight())){
r= parseint($(this).outerheight());
}
$(this).find(".bd").css({"width":(r*2)+"px","height":(r*2)+"px"});
$(this).find(".bd").css({"left":(e.pagex-$(this).position().left-r)+"px","top":(e.pagey-$(this).position().top-r)+"px" });
// $(this).find(".bd").css({"left":(e.pagex-$(this).position().left-r/2 )+"px","top":(e.pagey-$(this).position().top-r/2 )+"px" });
$(this).find(".bd").addclass("dh");
});
</script>
</body>
</html>
相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!
相关阅读:
简易的图片点击上传功能
ionic应用里文字不能长按复制、粘贴怎么办
以上就是简单的jquery点击水纹波动动画示例的详细内容。