如果单击数组中的元素,如何触发click事件?

时间:2011-12-22 17:12:49

标签: javascript jquery

我有一个DOM元素数组。如果单击第四个,我想隐藏搜索框。如果点击任何其他的,我想显示它。我该怎么做?我目前有:

var app = {
    config: {
        tabs: [$("#tab1"), $("#tab2"), $("#tab3"), $("#tab4")],
        search: $("#search")
    },
    showHideSearch: function () {
        // Here I need to test if the fourth tab was clicked on then hide(); 
        // else if tabs one through three were clicked show
    }
}
app.showHideSearch();

感谢任何帮助。谢谢。

2 个答案:

答案 0 :(得分:4)

您不需要数组来执行此操作。

$( "#tab4" ).click( function() {
    app.config.search.hide();
    // $( "#search" ).hide();
});
$( "#tab1, #tab2, #tab3" ).click( function() {
    app.config.search.show();
    // $( "#search" ).show();
});

答案 1 :(得分:2)

$.each(app.config.tabs, function(i, v) { 
  v.bind('click', function(){
    $('#searchbox').show();
    if(i==3)
      $('#searchbox').hide();
  });
});