周五比较闲,用jQuery简单模拟了下Google的大公鸡,基本效果都实现了,但是思路不敢保证很好。
而且,Google为了鼠标事件更加精细,用了若干小div来处理,而我为了省事则直接在公鸡的各个部位处理了。因此点击事件的精细度远没他的好。
?
<div id="cock">
<div id="face"></div>
<div id="head"></div>
<div id="plumage1"></div>
<div id="plumage2"></div>
<div id="plumage3"></div>
<div id="plumage4"></div>
<div id="wing"></div>
<div id="foot"></div>
<div id="link"></div>
</div>
正如前面说的, 大公鸡我只用了这种简单的结构。
就不截图了。
?
//换换我的小衣服
var changeStyle = function($this, type, maxNum){
var i = 0;
$this.one('click', function(){
//开始换衣后就不再抖毛啦~
clearInterval(autoPlumageShake);
}).bind('click', function(){
$(this).css('background-position', type[++i]);
if(i==maxNum){i=0}
});
};
//张张我的小嘴巴
var mouthShake = function(){
setTimeout(function(){
$('#face').css({'background-position': '-80px -457px'});
}, 400);
setTimeout(function(){
$('#face').css({'background-position': '0 -457px'});
}, 600);
setTimeout(function(){
wingClick();
}, 610);
};
//摇摇我的小翅膀
var wingShake = function(num){
$('#wing').css({'background-position': Cock.wing[13-num]});
return function(){
if(num--){
setTimeout(wingShake(num), 60);
}
};
};