获取第一次出现的类的位置(Jquery)

时间:2017-02-02 17:18:11

标签: javascript jquery html css

如何检测某个部分的位置,该部分是具有特定类的第一部分?

例如,我有四个部分:

  • 第一部分包含课程banana
  • 第二节课apple
  • 第三个也是apple
  • 最后orange

如何检测第一次出现苹果的位置 - 这将是位置2​​?

3 个答案:

答案 0 :(得分:4)

如果您为分组提供选择器,则可以使用index()方法来实现此目的。试试这个:



var appleIndex = $('.apple').index('.section');
console.log(appleIndex);

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="section banana">Banana</div>
<div class="section apple">Apple</div>
<div class="section melon">Melon</div>
<div class="section grape">Grape</div>
&#13;
&#13;
&#13;

请注意,索引是从零开始的,因此第二项将是索引1,而不是问题中的2。如果需要,你可以轻松地为它添加1。

答案 1 :(得分:1)

您可以编写一个jQuery插件来迭代元素并检索它们的位置。

以下函数是一个jQuery插件,用于迭代某些元素并检查它是否具有特定的类。如果有,它的位置将被返回。

Intel MKL ERROR: Parameter 4 was incorrect on entry to DGELSD.
C:\Users\Max.Kaye\AppData\Local\Enthought\Canopy\User\lib\site-packages\numpy\lib\polynomial.py:594: RankWarning: Polyfit may be poorly conditioned 
warnings.warn(msg, RankWarning)

演示

"fieldname": {
          "type": "string",
          "norms": {
            "enabled": false
          },
          "fielddata": {
            "format": "disabled"
          },
          "fields": {
             "raw" : {"type": "string",
                      "index" : "not_analyzed",
                      "doc_values" : true,
                      "ignore_above" : 256
                     }
               }
        },
(function($) {
  $.fn.idiciesOfClass = function(className) {
    return this.map(function(index) {
      return $(this).hasClass(className) ? index : -1;
    }).toArray().filter(function(pos) {
      return pos > -1;
    });
  }
})(jQuery);

  

Apple类标记:1,2

答案 2 :(得分:0)

如果它们都位于id='parent'对象中,那么您可以这样做:

$('#parent').children().each(function (i, v) {
    if ($(v).hasClass("apple"))
    {
        console.log(i);
        return false;
    }
});