Heim > Web-Frontend > js-Tutorial > So verwenden Sie den jQuery-Filter zum Ausschließen von Elementen, um die Eigenschaften angegebener Tags zu ändern

So verwenden Sie den jQuery-Filter zum Ausschließen von Elementen, um die Eigenschaften angegebener Tags zu ändern

PHP中文网
Freigeben: 2018-05-28 10:18:58
Original
3189 Leute haben es durchsucht

Einfacher Fall:

$(function(){
    $("td[id][id!='']").click(function(){
           //你的逻辑
    });
});
Nach dem Login kopieren

Im obigen Code führt jedes td, das eine ID hat und die ID nicht leer ist, „Ihre Logik“ aus.

======================= Nachdruck=================== === ===

1. eq()  Filtern Sie das Element mit der angegebenen Indexnummer heraus
2. Filtern Sie das erste passende Element heraus
3 das letzte passende Element
4. hasClass() Überprüfen Sie, ob das übereinstimmende Element die angegebene Klasse enthält
5. Filtern Sie den Satz von Elementen heraus, die dem angegebenen Ausdruck entsprechen
6 ob das Element im Parameter Matching
7, map()
8, has() angegeben werden kann. Elemente herausfiltern, die angegebene Unterelemente enthalten
9, not() Elemente ausschließen, die in Parametern abgeglichen werden können
10, Slice( ) Fangen Sie die angegebene Anzahl von Elementen ab
11. Filtern Sie, um die Ressourcen des angegebenen Elements zu erhalten
12 Beginnen Sie mit dem aktuellen Element , gibt das erste passende übergeordnete Element zurück, das die Bedingungen erfüllt
13. Finden Sie untergeordnete Elemente aus dem angegebenen Element
14. Holen Sie sich das nächste gleichgeordnete Element des angegebenen Elements
15. )  Alle nachfolgenden Geschwisterelemente abrufen
16 , nextUntil() Ruft die nachfolgenden Elemente ab, bis die Parameter übereinstimmen, mit Ausnahme der Endbedingung
17. offsetPosition() Gibt das erste für die Positionierung verwendete Vorfahrenelement zurück, d. h. findet den Vorfahren Element, dessen Position relativ oder absolut ist.
18. parent()  Ruft das direkte übergeordnete Element des angegebenen Elements ab
19. parent()  Ruft alle Vorfahrenelemente des angegebenen Elements ab, bis hin zu
20. parentUntil() Holen Sie sich die Vorfahrenelemente des angegebenen Elements, bis die Parameter übereinstimmen können
21. Holen Sie sich das vorherige Geschwisterelement des angegebenen Elements
22.prevAll() Holen Sie sich alle Geschwisterelemente vor dem angegebenen Element
23. prevUntil() Ruft alle Geschwisterelemente vor dem angegebenen Element ab, bis die Bedingungen in den Parametern erfüllt werden können. Beachten Sie, dass die Parameterbedingung selbst nicht übereinstimmt
24  Rufen Sie die Geschwisterelemente des angegebenen Elements ab, unabhängig davon, ob sie vorher oder nachher
add()  sind. Fügen Sie das ausgewählte Element zur jQuery-Objektsammlung hinzu
26. andSelf () Fügt sich der ausgewählten jQuery-Sammlung hinzu, um einmalige Operationen zu erleichtern
27. end() Gibt die Operation zurück, die die aktuelle Selektorauswahl in den vorherigen Zustand ändert.
28. Inhalt Nicht verstanden

****************************** Filter***** ******* ******************************

1. eq() Filterelemente mit angegebenen Indexnummern

Syntax: eq(index|-index) Die Indexnummer beginnt bei 0. Wenn es sich um einen negativen Wert handelt, zählt sie von der letzten herunter und die letzte beginnt bei -1

  $("p").eq(1);  //如果选择器改为  $("p").eq(-1),则我是第四个P会被选中
    
  <p>
    <p>我是第一个P</p>
    <p>我是第二个P</p>  //会被选中,索引值为1
    <p>我是第三个P</p>
    <p>我是第四个P</p>
  </p>  
Nach dem Login kopieren

Syntax: first() Diese Methode hat keine Parameter

  $("p").first();
    
  <p>
    <p>我是第一个P</p>  //我的索引值是0,我是第一个,我会被选中
    <p>我是第二个P</p>
    <p>我是第三个P</p>
    <p>我是第四个P</p>
  </p>  
Nach dem Login kopieren

Syntax: last() Diese Methode hat keine Parameter

  $("p").last();
    
  <p>
    <p>我是第一个P</p>
    <p>我是第二个P</p>
    <p>我是第三个P</p>
    <p>我是第四个P</p>    //我是最后一个,我会被选中
  </p>  
Nach dem Login kopieren

Syntax: hasClass( class) class ist der Kategoriename // gibt einen booleschen Wert zurück

   if($("p").hasClass("p2"))
  {
    alert("我里面含有class=p2的元素");  //会弹出,p里的确存在class="p2"的元素
  } 
  <p>
    <p>我是第一个P</p>
    <p class="p2">我是第二个P</p>
    <p>我是第三个P</p>
    <p>我是第四个P</p>
  </p>  
Nach dem Login kopieren

Syntax: filter(expr|obj|ele|fn) expr: passender Ausdruck | DOM: DOM-Element, das für den Abgleich verwendet wird |. Funktionsrückgabewert als Abgleichsbedingung

  $("p").filter(".p2");

  <p>
    <p>我是第一个P</p>
    <p class="p2">我是第二个P</p>  //我会被选中,我的class="p2"
    <p>我是第三个P</p>
    <p>我是第四个P</p>
  </p>  
Nach dem Login kopieren

Syntax: is(expr|obj|ele|fn) expr: abgleichender Ausdruck | |. DOM: DOM-Element, das zum Abgleichen verwendet wird.

  $($("p").first().is(".p2"))
  {
    alert("不会弹出,因为第一个P的class不等于p2"); 
  }

  <p>
    <p>我是第一个P</p>
    <p class="p2">我是第二个P</p>  //我会被选中,我的class="p2"
    <p>我是第三个P</p>
    <p>我是第四个P</p>
  </p>  
Nach dem Login kopieren

7. Elemente herausfiltern, die bestimmte Unterelemente enthalten

Syntax: has(expr|ele) expr: Auswahl Ausdruck |. DOM-Elementauswahl

9. not() Elemente ausschließen, die in den Parametern übereinstimmen können
  $("p").has("p");
 
  <p>                 //本p会被选中,因为该p含有p子元素
    <p>我是第一个P</p>
    <p class="p2">我是第二个P</p>
    <p>我是第三个P</p>
    <p>我是第四个P</p>
  </p>
  <p>
    <span>我是一个span</spam>
  </p>
Nach dem Login kopieren

Syntax : not(expr|ele|fn) expr: Auswahlausdruck |. Die Rolle von fn ist unklar

10. Abfangen der angegebenen Anzahl von Elementen ab dem angegebenen Index
  $("p").not(".p2");
 
  <p>
    <p>我是第一个P</p>        //会被选中,没有class=p2
    <p class="p2">我是第二个P</p>  //不会被选中,因为有class=p2被not(".p2")排除了
    <p>我是第三个P</p>        //会被选中,没有class=p2
    <p>我是第四个P</p>         //会被选中,没有class=p2
  </p>  
Nach dem Login kopieren

Syntax: Slice(Start, [Ende]) Startposition, Ende ist optional, Endposition, ausgenommen die Endposition. Wenn nicht angegeben, wird mit dem letzten abgeglichen.

**************************** Filter**************** ** ***************
  $("p").slice(1,3)
 
  <p>
    <p>我是第一个P</p>        //不会被选中,我索引为0
    <p class="p2">我是第二个P</p>  //会被选中,我索引为1
    <p>我是第三个P</p>        //会被选中,我索引为2
    <p>我是第四个P</p>         //不会被选中,虽然我的索引为3,但是不包括我
  </p>  
Nach dem Login kopieren

11. children() Filter, um die Ressourcen des angegebenen Elements zu erhalten

Syntax: children(expr); Rufen Sie die Ressourcen des angegebenen Elements ab. Ressource, expr ist die Filterbedingung für untergeordnete Elemente

12. close() Geben Sie ausgehend vom aktuellen Element das erste übereinstimmende übergeordnete Element zurück, das die Bedingungen
  $("p").children(".p2");
 
  <p>
    <p>我是第一个P</p>        //不会被选中,虽然我是p的子元素,但是我没class=p2
    <p class="p2">我是第二个P</p>  //会被选中,我既是p的子元素,又有class=p2
    <p>我是第三个P</p>        //不会被选中,虽然我是p的子元素,但是我没class=p2
    <p>我是第四个P</p>         //不会被选中,虽然我是p的子元素,但是我没class=p2
  </p>  
Nach dem Login kopieren
erfüllt

13 , find() Unterelemente aus dem angegebenen Element finden
  $("span").closest("p","p");
  <p>                   //不会被选中,被P抢了先机
    <p>我是第一个P            //P会被选中,因为P符合条件,而且是最先匹配到的,虽然p也符合条件了,但是p不是最先匹配到的。因此p不会被选中。
      <span>我是P里的span</span>
    </p>
  </p>  
Nach dem Login kopieren

Syntax: find(expr|obj|ele) expr: passender Ausdruck |. obj DOM-Element

Vierzehn, next() Erhalten Sie das nächste Geschwisterelement des angegebenen Elements
  $("p").find(".p2");    
  <p>
    <p>我是第一个P</p>        //不会被选中,虽然我是p的子元素,但是我没class=p2
    <p class="p2">我是第二个P</p>  //会被选中,我既是p的子元素,又有class=p2
    <p>我是第三个P</p>        //不会被选中,虽然我是p的子元素,但是我没class=p2
    <p>我是第四个P</p>         //不会被选中,虽然我是p的子元素,但是我没class=p2
  </p>  
Nach dem Login kopieren

Syntax: next(expr) expr: Optionale Filterbedingungen, wenn das nächste Geschwisterelement die nicht erfüllt Bedingungen, Rückgabe leer.

15. nextAll() Alle nachfolgenden Geschwisterelemente abrufen
  $(".p2").next();    //如果筛选改为$(".p2").next(".p4")那选中的是哪个呢?答案是:没选中任何元素,因为虽然有个class=p4的P,但它不是.p2的下一个。      
  <p>
    <p>我是第一个P</p>        
    <p class="p2">我是第二个P</p>  
    <p>我是第三个P</p>        //我是.p2的next
    <p class="p4">我是第四个P</p>
  </p>  
Nach dem Login kopieren

Syntax: nextAll(expr) expr: Optional, Filterbedingungen, alle nachfolgenden Elemente abrufen, die die Ausdrucksbedingungen erfüllen Geschwisterelemente

16. nextUntil() Ruft die folgenden Elemente ab, bis die Parameter übereinstimmen, mit Ausnahme der Endbedingung
  $(".p2").nextAll();  //如果筛选条件改为 $(".p2").nextAll(".p4");  则只有我是第四个P会被选中
  <p>
    <p>我是第一个P</p>        
    <p class="p2">我是第二个P</p>  
    <p>我是第三个P</p>        //会被选中,是.p2后面的兄弟元素
    <p class="p4">我是第四个P</p>   //会被选中,是.p2后面的兄弟元素
  </p>  
Nach dem Login kopieren

   语法:nextUntil([expr|ele][,fil])  expr筛选表达式 | DOM元素筛选,注意不包括参数里的那一个

  $(".p2").nextUntil(".p4");    //注意此方法并不会包括.p4
  <p>
    <p>我是第一个P</p>        
    <p class="p2">我是第二个P</p>  
    <p>我是第三个P</p>        //会被选中,是.p2后面的兄弟元素
    <p class="p4">我是第四个P</p>   //不会被选中,我作为结束条件,但不包括我
  </p>
Nach dem Login kopieren

十七、offsetPosition()  返回第一个用于定位的祖先元素,即查找祖先元素中position为relative或absolute的元素。

   语法:offsetPosition()  此方法没有参数  由于CSS的绝对定位的定位基准是相对最近的一个已定位元素,因此此方法的作用不言而喻。

  $("span").offsetParent();
  <p style="position:relative">  //选中的是p,因此p是已定位元素。
    <p>
      <span>我是一个span</span>
    </p>
  </p>
Nach dem Login kopieren

十八、parent()    获取指定元素的直接父元素

    语法:parent(expr)  expr为筛选条件,如果直接父元素不符合条件,则不返回任何元素(无论它的祖先是否具有能与expr匹配的)

  $("span").parent();
  <p style="position:relative">  
    <p>                //我是span的直接父元素,我会被匹配到
      <span>我是一个span</span>
    </p>
  </p>
Nach dem Login kopieren

十九、parents()   获取指定元素的所有祖先元素,一直到

   语法:parents(expr)  expr为筛选条件,如果某个祖先元素不符合expr则排除

  $("span").parents();
  <p style="position:relative">  //我是span的祖先元素,我也会被匹配到.另外<body></body>也会被匹配到  
    <p>                //我是span的直接父元素,我会被匹配到
      <span>我是一个span</span>
    </p>
  </p>
Nach dem Login kopieren

二十、parentsUntil()  获取指定元素的祖先元素,知道参数里能匹配到的为止

   语法:parentsUntil(expr)  expr为停止参数,一直匹配到expr为止,同时参数的条件是不会被匹配中的。

  $("span").parentsUntil("p");
  <p style="position:relative">  //我是span的祖先元素,但是我作为停止条件,我也不会被选中  
    <p>                //我是span的直接父元素,我会被选中
      <span>我是一个span</span>
    </p>
  </p>
Nach dem Login kopieren

二十一、prev()    获取指定元素的前一个兄弟元素

    语法:prev(expr)    expr:可选。当上一个兄弟元素不符合参数中的条件时,不返回任何元素。

  $(".p2").prev();    
  <p>
    <p>我是第一个P</p>      //我会被选中,我是.p2的前一个元素。
    <p class="p2">我是第二个P</p>  
    <p>我是第三个P</p>        
    <p class="p4">我是第四个P</p>   
  </p>
Nach dem Login kopieren

二十二、prevAll()  获取指定元素前面的所有兄弟元素

    语法:prevAll(expr)  expr:可选,排除所有不能够被expr匹配上的元素

  $(".p4").prevAll(".p2");    
  <p>
    <p>我是第一个P</p>        //不会被选中,虽然我是.p4前面的兄弟元素,但是我没有class=p2
    <p class="p2">我是第二个P</p>  //会被选中,我既是.p4前面的兄弟元素,而且我有class=p2
    <p>我是第三个P</p>        //不会被选中,虽然我是.p4前面的兄弟元素,但是我没有class=p2
    <p class="p4">我是第四个P</p>  
  </p>
Nach dem Login kopieren

二十三、prevUntil()  获取指定元素前面的所有兄弟元素,直到参数里的条件能够匹配到的。 注意参数条件本身不会被匹配

    语法:prevUntil([expr|ele][,fil])  expr匹配表达式 | DOM元素匹配

  $(".p4").prevUntil(".p2");    
  <p>
    <p>我是第一个P</p>        //不会被选中,到p2就停止了
    <p class="p2">我是第二个P</p>  //不会被选中,我是停止条件,不包括我
    <p>我是第三个P</p>        //会被选中,我在.p2前,递归到我在到.p2
    <p class="p4">我是第四个P</p>  //不会被选中,我自己怎么可能是我自己前面的呢?
  </p>
Nach dem Login kopieren

/******************** 串联 *******************************/

二十四、siblings()  获取指定元素的兄弟元素,不分前后

    语法:siblings(expr);  expr为筛选条件,不符合条件的不会选中

  $(".p2").siblings();    
  <p>
    <p>我是第一个P</p>        //会被选中,我是.p2的兄弟元素
    <p class="p2">我是第二个P</p>  //不会被选中,我是自己
    <p>我是第三个P</p>        //会被选中,我是.p2的兄弟元素
    <p class="p4">我是第四个P</p>  //会被选中,我是.p2的兄弟元素
  </p>
Nach dem Login kopieren

二十五、add()  将选中的元素添加到jQuery对象集合中

    add(expr|elements|html|jQueryObject)  expr:选择器表达式 | DOM表达式 | Html片段 | jQuery对象,将jQuery对象集合一起方便操作;

  $(".p2").add("span").css("background-color","red");    
  <p>
    <p>我是第一个P</p>        
    <p class="p2">我是第二个P</p>  //会变红
    <p>我是第三个P</p>        
    <p class="p4">我是第四个P</p>  
  </p>
  <span>我是一个span</span>      //会变红
Nach dem Login kopieren

二十六、andSelf()  将自身加到选中的jQuery集合中,以方便一次性操作

    andSelf()  此方法无参数

  $(".p2").nextAll().andSelf().css("background-color","red");
  <p>
    <p>我是第一个P</p>        
    <p class="p2">我是第二个P</p>  //会变红,这就是andSelf()的效果
    <p>我是第三个P</p>        //会变红
    <p class="p4">我是第四个P</p>  //会变红
  </p>
Nach dem Login kopieren

二十七、end()   将改变当前选择器选中的操作回退为上一个状态。

    end()   此方法没有参数

  $(".p2").next().end().css("background-color","red");
  <p>
    <p>我是第一个P</p>        
    <p class="p2">我是第二个P</p>  //会变红,这就end()的效果
    <p>我是第三个P</p>        //不会变红,尽管next()方法之后选中的是这一个,但是由于被end()方法回退了因此是上一个。
    <p class="p4">我是第四个P</p>
  </p>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonSo verwenden Sie den jQuery-Filter zum Ausschließen von Elementen, um die Eigenschaften angegebener Tags zu ändern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage