Jquery:我怎么能“开火”一个事件?

时间:2011-07-29 07:46:52

标签: jquery

我有<div>,其中包含多个元素;我添加了一个链接,用户可以打开和关闭div容器,它运行正常。 我想在用户点击另一个项目时也关闭该容器,所以我想触发打开/关闭我已定义模拟打开/关闭链接中的点击但它不会运行。

html code:
<div id=container_expand_collapse>Open-close</div>
<div id=project_div_container>

    <div class=element>Element1</div>
   ....
</div>

JQuery code:

$('#container_expand_collapse').toggle(function() {
      $('#project_div_container').animate({width: 10});
   }, function() {
      $('#project_div_container').animate({width: 120});
   }
);

$(".element").click(function() {
   $("#container_expand_collapse").trigger("toggle");
}

我如何强制切换事件? 谢谢!

5 个答案:

答案 0 :(得分:4)

更好的方式

$('#container_expand_collapse, .element').live('click',function() {
      $('#project_div_container').animate({width: 10});
   }, function() {
      $('#project_div_container').animate({width: 120});
   }
);

答案 1 :(得分:3)

要触发.click上的$(".element"),请执行以下操作: $('.element').click()

答案 2 :(得分:2)

toggle()是一个辅助函数。你必须使用click()。

$(".element").click(function() {
    $("#container_expand_collapse").trigger("click");
}

答案 3 :(得分:2)

你的代码很好。切换事件实际上基于“点击”事件,因此您只需将其更改为该事件。

$(".element").click(function() {
   $("#container_expand_collapse").trigger("click");
}

http://jsfiddle.net/rkw79/Gaz2m/

答案 4 :(得分:1)

使用toggle之类的

$("#container_expand_collapse").toggle( fn, fn2, [fn3,fn4,...]);

这是一个小提琴http://jsfiddle.net/EKesD/1/

http://docs.jquery.com/A