现有这样的jquery click事件:
$(document).ready(function() {
$curtainopen = false;
$(".rightcurtain").click(function(){
$(this).blur();
if ($curtainopen == false){
$(this).stop().animate({top: '0px' }, {queue:false, duration:350, easing:'easeOutBounce'});
$(".rightcurtain").stop().animate({width:'60px'}, 5000 ); //这里的“60px”现在是固定值
$curtainopen = true;
}else{
$(this).stop().animate({top: '-40px' }, {queue:false, duration:350, easing:'easeOutBounce'});
$(".rightcurtain").stop().animate({width:'82%'}, 5000 );//这里的“82%”现在是固定值
$curtainopen = false;
}
return false;
});
});
//asker:www.yuanshi88.com
现在有不同的rightcurtain层,都需要调用这个click事件,但上面的60px和82%不是固定的。而是根据不同的层传递不同的参数,请问要怎么写?
[code="html"]<!DOCTYPE HTML>
<br> .rightcurtain{<br> border: 1px solid black;<br> }<br>
<br> $(function(){<br> $curtainopen = false; <br> $(".rightcurtain").click(function(){ <br> $(this).blur(); <br> if ($curtainopen == false){<br><br> $(this).stop().animate({top: '0px' }, {queue:false, duration:350, easing:'swing'});<br><br> $(".rightcurtain").stop().animate({width:$(this).attr('data-width-on')}, 5000 ); //这里的“60px”现在是固定值 <br> $curtainopen = true; <br> }else{ <br> $(this).stop().animate({top: '-40px' }, {queue:false, duration:350, easing:'swing'});<br><br> $(".rightcurtain").stop().animate({width:$(this).attr('data-width-off')}, 5000 );//这里的“82%”现在是固定值 <br> $curtainopen = false; <br> } <br> return false; <br> }); <br> });<br>
1
2
[/code]
function(参数){
if(参数){
}else{}
}
这里提供一个思路,给每个rightcurtain层绑定一些数据,click处理函数里面再取出来。[code="html"]<!DOCTYPE HTML>
<br> .rightcurtain{<br> border: 1px solid black;<br> }<br>
<br> $(function(){<br> $curtainopen = false; <br> $(".rightcurtain").click(function(){ <br> $(this).blur(); <br> if ($curtainopen == false){<br><br> alert(1);<br> $(this).stop().animate({top: '0px' }, {queue:false, duration:350, easing:'swing'});<br><br> $(".rightcurtain").stop().animate({width:$(this).attr('data-width-on')}, 5000 ); //这里的“60px”现在是固定值 <br> $curtainopen = true; <br> }else{ <br> console.log(21);<br> $(this).stop().animate({top: '-40px' }, {queue:false, duration:350, easing:'swing'});<br><br> console.log(22);<br> $(".rightcurtain").stop().animate({width:$(this).attr('data-width-off')}, 5000 );//这里的“82%”现在是固定值 <br> console.log(23);<br> $curtainopen = false; <br> } <br> return false; <br> }); <br> });<br>
1
2
[/code]
蛋疼得很,老发错code。。不能修改不给力啊。。[code="html"]<!DOCTYPE HTML>
<br> .rightcurtain{<br> border: 1px solid black;<br> }<br>
<br> $(function(){<br> $curtainopen = false; <br> $(".rightcurtain").click(function(){ <br> $(this).blur(); <br> if ($curtainopen == false){<br><br> $(this).stop().animate({top: '0px' }, {queue:false, duration:350, easing:'swing'});<br><br> $(".rightcurtain").stop().animate({width:$(this).attr('data-width-on')}, 5000 ); //这里的“60px”现在是固定值 <br> $curtainopen = true; <br> }else{ <br> $(this).stop().animate({top: '-40px' }, {queue:false, duration:350, easing:'swing'});<br><br> $(".rightcurtain").stop().animate({width:$(this).attr('data-width-off')}, 5000 );//这里的“82%”现在是固定值 <br> $curtainopen = false; <br> } <br> return false; <br> }); <br> });<br>
1
2
[/code]