用百度搜索duang,整个页面会震动
这个是怎么实现的呢?
谢谢题主提供彩蛋,看了下代码,使用CSS实现的:
@keyframes page_shake {
from {
transform: rotate(0deg);
-ms-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-o-transform: rotate(0deg)
}
4% {
transform: rotate(5deg);
-ms-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
-o-transform: rotate(5deg)
}
12.5% {
transform: rotate(-5deg);
-ms-transform: rotate(-5deg);
-moz-transform: rotate(-5deg);
-webkit-transform: rotate(-5deg);
-o-transform: rotate(-5deg)
}
21% {
transform: rotate(5deg);
-ms-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
-o-transform: rotate(5deg)
}
29% {
transform: rotate(-5deg);
-ms-transform: rotate(-5deg);
-moz-transform: rotate(-5deg);
-webkit-transform: rotate(-5deg);
-o-transform: rotate(-5deg)
}
37.5% {
transform: rotate(5deg);
-ms-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
-o-transform: rotate(5deg)
}
46% {
transform: rotate(-5deg);
-ms-transform: rotate(-5deg);
-moz-transform: rotate(-5deg);
-webkit-transform: rotate(-5deg);
-o-transform: rotate(-5deg)
}
50%,to {
transform: rotate(0deg);
-ms-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-o-transform: rotate(0deg)
}
}
@-webkit-keyframes page_shake {
from {
transform: rotate(0deg);
-ms-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-o-transform: rotate(0deg)
}
4% {
transform: rotate(5deg);
-ms-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
-o-transform: rotate(5deg)
}
12.5% {
transform: rotate(-5deg);
-ms-transform: rotate(-5deg);
-moz-transform: rotate(-5deg);
-webkit-transform: rotate(-5deg);
-o-transform: rotate(-5deg)
}
21% {
transform: rotate(5deg);
-ms-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
-o-transform: rotate(5deg)
}
29% {
transform: rotate(-5deg);
-ms-transform: rotate(-5deg);
-moz-transform: rotate(-5deg);
-webkit-transform: rotate(-5deg);
-o-transform: rotate(-5deg)
}
37.5% {
transform: rotate(5deg);
-ms-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
-o-transform: rotate(5deg)
}
46% {
transform: rotate(-5deg);
-ms-transform: rotate(-5deg);
-moz-transform: rotate(-5deg);
-webkit-transform: rotate(-5deg);
-o-transform: rotate(-5deg)
}
50%,to {
transform: rotate(0deg);
-ms-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-o-transform: rotate(0deg)
}
}
body.opr-texiao-shake {
animation: page_shake 2s ease 0s 1;
-webkit-animation: page_shake 2s ease 0s 1;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<style>
@keyframes page_shake {
from {
transform: rotate(0deg);
-ms-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-o-transform: rotate(0deg)
}
4% {
transform: rotate(5deg);
-ms-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
-o-transform: rotate(5deg)
}
12.5% {
transform: rotate(-5deg);
-ms-transform: rotate(-5deg);
-moz-transform: rotate(-5deg);
-webkit-transform: rotate(-5deg);
-o-transform: rotate(-5deg)
}
21% {
transform: rotate(5deg);
-ms-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
-o-transform: rotate(5deg)
}
29% {
transform: rotate(-5deg);
-ms-transform: rotate(-5deg);
-moz-transform: rotate(-5deg);
-webkit-transform: rotate(-5deg);
-o-transform: rotate(-5deg)
}
37.5% {
transform: rotate(5deg);
-ms-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
-o-transform: rotate(5deg)
}
46% {
transform: rotate(-5deg);
-ms-transform: rotate(-5deg);
-moz-transform: rotate(-5deg);
-webkit-transform: rotate(-5deg);
-o-transform: rotate(-5deg)
}
50%,
to {
transform: rotate(0deg);
-ms-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-o-transform: rotate(0deg)
}
}
@-webkit-keyframes page_shake {
from {
transform: rotate(0deg);
-ms-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-o-transform: rotate(0deg)
}
4% {
transform: rotate(5deg);
-ms-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
-o-transform: rotate(5deg)
}
12.5% {
transform: rotate(-5deg);
-ms-transform: rotate(-5deg);
-moz-transform: rotate(-5deg);
-webkit-transform: rotate(-5deg);
-o-transform: rotate(-5deg)
}
21% {
transform: rotate(5deg);
-ms-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
-o-transform: rotate(5deg)
}
29% {
transform: rotate(-5deg);
-ms-transform: rotate(-5deg);
-moz-transform: rotate(-5deg);
-webkit-transform: rotate(-5deg);
-o-transform: rotate(-5deg)
}
37.5% {
transform: rotate(5deg);
-ms-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
-o-transform: rotate(5deg)
}
46% {
transform: rotate(-5deg);
-ms-transform: rotate(-5deg);
-moz-transform: rotate(-5deg);
-webkit-transform: rotate(-5deg);
-o-transform: rotate(-5deg)
}
50%,
to {
transform: rotate(0deg);
-ms-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-o-transform: rotate(0deg)
}
}
body.opr-texiao-shake {
animation: page_shake 2s ease 0s 1;
-webkit-animation: page_shake 2s ease 0s 1
}
</style>
<body class="s-manhattan-index opr-texiao-shake">
<input type="text" id='duang'>
<div style='height:300px'>
是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。
</div>
<div style='height:300px'>
是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。
</div>
<div style='height:300px'>
是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。
</div>
<div style='height:300px'>
是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。
</div>
<div style='height:300px'>
是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。 是头发的特技,是特技的头发。
</div>
</body>
</html>
var $panel = $('body');
box_left = ($(window).width() - $panel.width()) / 2;
$panel.css({'left': box_left,'position':'absolute'});
for(var i=1; i<10; i++){
$panel.animate({left:box_left-(40-10*i)},50);
$panel.animate({left:box_left+2*(40-10*i)},50);
}
顺着这个思路