仅在特定条件为真时运行jQuery函数

时间:2013-02-21 18:12:16

标签: jquery html css

我有一个名为“测试”的div。此div可以在同一页面上出现一次或多次,其中包含一个或多个标签。例如,一个页面可以有

<div class="testing">
   <span>hello</span>
</div>

或者其他页面可以

<div class="testing">
   <span>hello</span>
   <span>hello again </span>
</div>

我想在“testing”div上运行jQuery函数,条件如下:

  • 如果“testing”div包含多个span标记,我只希望运行该函数。
  • 我只希望函数在包含多个span标记的“testing”div上运行。

我将如何做到这一点?

6 个答案:

答案 0 :(得分:2)

在提问之前,请尝试发布您已有的代码。随着那说......

$('div.testing span').length

这将通过类测试返回div内的span元素数。

答案 1 :(得分:0)

把它放在你的功能中:

if($('.testing span').length > 1) { /* relevant code here */ }

答案 2 :(得分:0)

  1. 编写您的功能
  2. 检查测试中的跨距数(提示:if($('.testing').children('span').length
  3. 在if语句的“then”部分中运行相应的功能

答案 3 :(得分:0)

试试这个

 if($('.testing span').length > 1) { 

 }

答案 4 :(得分:0)

试一试。将背景设置为红色的部分替换为您想要做的任何事情。

$(".testing").each(function(index, value) { 
    var spans = $(this).find("span");
    if(spans.length > 1){
        $(this).css("background-color", "red");
    } 
});

答案 5 :(得分:0)

您想要的条件是相同的,因此在1条件下您可以执行以下操作:

if($('.testing span').length > 1) console.log('more than one');

功能示例

if($('.testing span').length > 1) myFunction();