如果和或在jQuery函数中,是否可以组合?

时间:2014-05-23 09:32:02

标签: javascript jquery

我想要结合这两个。如果单击链接或div是可见的。这两个可以在同一个声明中吗?

if ($("#foo").click(function() || $("#bar").is(":visible")) {
    some code here...
}

2 个答案:

答案 0 :(得分:4)

以下可以做到这一点!

$("#foo").click(function() {
  clickFunction();
}

if($("#bar").is(":visible")) {
  // #bar is visible
  clickFunction();
}

function clickFunction() {
  /* the function code */
}

我所做的是,我为事件创建了一个共同的功能。然后你会检查条件。单击超链接或div可见,它将执行函数中的代码。

注意

请注意,在没有任何点击的情况下检查可见的div是行不通的。您可以使用其他事件或函数。

<button>Check visibility</button>

jQuery代码就像下面一样检查按钮的事件。

$('button').click(function () {
  // here check for visiblity, because without event you can't do that.
  if($('#bar').is(':visible')) {
     now do the code!
  }
}

答案 1 :(得分:1)

如果我收到你的评论,这就是你想要的:

function doSomething () {
    // ...
}

if ($("#bar").is(":visible")) {
    doSomething();
}

$("#foo").click(doSomething);