如何在事件中调用函数?

时间:2011-08-16 10:59:18

标签: javascript jquery

我正在尝试调用事件中的函数。但它没有用。 点击的div应该为fadeIn,其他div应该有50%的不透明度。

我的Jquery:

function clickopa ( element ) {
  return $( element ).fadeIn(),
  $( element ).closest('div).fadeTo(0, 0.5);
}

$('.blueDiv').fadeTo(0, 0.5);
$('.blackDiv').fadeTo(0, 0.5);
$('.blackDiv').click ( function(e) {
    clickopa(this);
});

我的HTML:

<div class="redDiv" style="background:red;width:20px;height:20px;"> </div>
<div class="blueDiv" style="background:blue;width:20px;height:20px;"> </div>
<div class="blackDiv" style="background:black;width:20px;height:20px;"> </div>

2 个答案:

答案 0 :(得分:1)

function clickopa () {
  $(this).css("opacity", 1); //Just use this inside the function instead of wrapping it inside of another function
                             //Since you aren't hiding the divs, just set the opacity to 1 instead of fading in.
  $( "div").not(this).css("opacity", 0.5); //Don't use fadeTo if you aren't animating
}

$('.blueDiv').css("opacity", 0.5);
$('.blackDiv').css("opacity", 0.5).click (clickopa); //Chain the function calls.

答案 1 :(得分:-1)

使用函数似乎没有什么意义,因为如果我正确地理解你的问题,只需执行以下操作即可使用2行代码:

$('div').click(function() {
  $('div').fadeTo(0,0.5);
  $(this).fadeTo(0,1.0);
});

希望这会有所帮助;如果没有评论。