Mon*_*ffy 2 html javascript css jquery css3
我试图通过使用jquery创建css box-shadow的脉冲效果.我尝试了以下代码,但完全失败了.我想要实现的是具有盒阴影的平滑脉冲效果
我试过的代码是html
<div class="one">
</div>
Run Code Online (Sandbox Code Playgroud)
CSS
.one {
width: 100px;
height: 100px;
background: red;
-webkit-box-shadow: -1px -1px 5px rgba(50, 50, 50, 0.75);
-moz-box-shadow: -1px -1px 5px rgba(50, 50, 50, 0.75);
box-shadow: -1px -1px 5px rgba(50, 50, 50, 0.75);
}
.two {
width: 100px;
height: 100px;
background: red;
-webkit-box-shadow: -1px -1px 13px rgba(50, 50, 50, 0.75);
-moz-box-shadow: -1px -1px 13px rgba(50, 50, 50, 0.75);
box-shadow: -1px -1px 13px rgba(50, 50, 50, 0.75);
}
Run Code Online (Sandbox Code Playgroud)
jQuery的
$("div").setInterval(function() {
$(this).toggleClass(".two");
}, 1000);
Run Code Online (Sandbox Code Playgroud)
纯CSS示例JSFIDDLE
@-webkit-keyframes shadow {
0% {box-shadow: -1px -1px 5px rgba(50, 50, 50, 0.75);}
50% {box-shadow: -1px -1px 13px rgba(50, 50, 50, 0.75);}
100% {box-shadow: -1px -1px 5px rgba(50, 50, 50, 0.75);}
}
@-moz-keyframes shadow {
0% {box-shadow: -1px -1px 5px rgba(50, 50, 50, 0.75);}
50% {box-shadow: -1px -1px 13px rgba(50, 50, 50, 0.75);}
100% {box-shadow: -1px -1px 5px rgba(50, 50, 50, 0.75);}
}
@keyframes shadow {
0% {box-shadow: -1px -1px 5px rgba(50, 50, 50, 0.75);}
50% {box-shadow: -1px -1px 13px rgba(50, 50, 50, 0.75);}
100% {box-shadow: -1px -1px 5px rgba(50, 50, 50, 0.75);}
}
.one {
width: 100px;
height: 100px;
margin: 10px;
background: red;
box-shadow: -1px -1px 5px rgba(50, 50, 50, 0.75);
}
.one:hover {
-webkit-animation: shadow 1s ease-in-out infinite;
-moz-animation: shadow 1s ease-in-out infinite;
animation: shadow 1s ease-in-out infinite;
}
Run Code Online (Sandbox Code Playgroud)
setInterval()不是一个jQuery函数,而是一个简单的JavaScript函数.
要使用它,您需要将代码更改为
setInterval(function() {
$("div").toggleClass("two");
}, 1000);
Run Code Online (Sandbox Code Playgroud)
这可行,但像开关一样; 为了使它顺利,你可以像这样使用CSS3过渡:
transition: all 1s ease;
Run Code Online (Sandbox Code Playgroud)
请注意,您不需要必要的javascript,这可以在纯CSS3中完成.