


Detaillierte Erläuterung der Anwendungsbeispiele der Funktionen attr() und prop() in jQuery (mit Nutzungsunterschieden)_jquery
Das Beispiel in diesem Artikel beschreibt die Verwendung der Funktionen attr() und prop() in jQuery. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:
1. Die attr()-Methode von jQuery
Die attr()-Methode wird in jQuery verwendet, um Elementattribute abzurufen und festzulegen. Attr() wird häufig in jQuery-DOM-Operationen verwendet.
1. attr (Attributname) // Den Wert des Attributs abrufen (den Attributwert des ersten übereinstimmenden Elements abrufen. Mit dieser Methode kann der Wert eines Attributs problemlos vom ersten übereinstimmenden Element abgerufen werden. Wenn dies bei dem Element nicht der Fall ist ein entsprechendes Attribut haben, gibt undefiniert zurück)
2. attr(Attributname, Attributwert) //Legen Sie den Wert des Attributs fest (Legen Sie einen Attributwert für alle übereinstimmenden Elemente fest.)
3. attr (Attributname, Funktionswert) //Legen Sie den Funktionswert des Attributs fest (Legen Sie einen berechneten Attributwert für alle übereinstimmenden Elemente fest. Geben Sie keinen Wert an, sondern eine Funktion und den dadurch berechneten Wert Funktion ist Attributwert )
4.attr(properties) //Mehrere Attributwerte für das angegebene Element festlegen, nämlich: {Attributname eins: „Attributwert eins“, Attributname zwei: „Attributwert zwei“, … … }. (Dies ist die beste Möglichkeit, viele Attribute stapelweise über alle übereinstimmenden Elemente hinweg festzulegen. Beachten Sie, dass Sie „className“ als Attributnamen verwenden müssen, wenn Sie das Klassenattribut eines Objekts festlegen möchten. Alternativ können Sie „class“ direkt verwenden. oder 'id'. )
Beispielcode:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>jquery中attr()方法</title> <script src="js/jquery-1.4.2.min.js" language="javascript" type="text/javascript" ></script> <style> p{color:red} li{color:blue;} .lili{font-weight:bold;color:red;} #lili{font-weight:bold;color:red;} </style> </head> <body> <p title="你最喜欢的水果是。">你最喜欢的水果是?</p> <ul> <li title="苹果汁">苹果</li> <li title="橘子汁" alt="123">橘子</li> <li title="菠萝汁">菠萝</li> </ul> <script> ... </script> </body> <html>
1.attr(name)//Den Wert des Attributs abrufen
1.1 Verwenden Sie attr(name), um den Titelwert zu erhalten:
<script> alert($("ul li:eq(1)").attr("title")); </script>
Ergebnis:
1.2 Verwenden Sie attr(name), um den Alt-Wert zu erhalten:
<script> alert($("ul li:eq(1)").attr("alt")); </script>
Ergebnis:
2. attr(name,value) //Legen Sie den Wert des Attributs fest
2.1 Verwenden Sie attr(name,value), um den Titelwert wie folgt zu ändern: Essen Sie keine Orangen
<script> $("ul li:eq(1)").attr("title","不吃橘子"); alert($("ul li:eq(1)").attr("title")); </script>
Ergebnis:
3. attr(name,fn) //Legen Sie den Funktionswert des Attributs fest
3.1 Setzen Sie den Wert des alt-Attributs auf den Wert des title-Attributs.
<script> $("ul li:eq(1)").attr("title",function(){ return this.alt}); alert($("ul li:eq(1)").attr("title")); </script>
Ergebnis:
4.attr(properties) //Legen Sie ein Objekt in der Form „Name/Wert“ als Attribute aller übereinstimmenden Elemente fest
4.1 Holen Sie sich das zweite
- und legen Sie die Attribute title und alt fest.
- -Einstellungsklasse in
- .
- in
- ab.
- und legen Sie den Stil fest.
<script> $("ul li:eq(1)").attr({style:"color:red"}); </script>
Ergebnis:
Es ist falsch, alt in li hinzuzufügen. Es kann nur in IMG-, Area- und Eingabeelementen (einschließlich Applet-Elementen) verwendet werden. Bei Eingabeelementen soll das Alt-Attribut das Bild der Schaltfläche „Senden“ ersetzen. Um die attr()-Methode hier im Detail zu erklären, gibt es kein geeignetes Attribut, daher wird alt als Beispiel verwendet. Es dient nur zum Erlernen und Nachschlagen der Verwendung der attr()-Methode.
Hier ist der Unterschied zwischen alt und tite.
alt: Dies ist der Text, der zur Beschreibung der Grafik verwendet wird. Wenn das Bild nicht angezeigt werden kann, werden diese Texte anstelle des Bildes angezeigt. Der Text wird auch angezeigt, wenn die Maus über das Bild bewegt wird.
Titel: Dies ist der Text, der angezeigt wird, nachdem die Maus darauf platziert wird.Wie lösche ich also Attribute?
Das Schlüsselwort zum Löschen von Attributen in jquery lautet: RemoveAttr. Beachten Sie, dass A groß geschrieben wird:
Es ist derselbe HTML-Code in Verwendung eins. Ich möchte das Titelattribut von li löschen, also ist es das:<script> $("ul li:eq(1)").removeAttr ("title"); </script>
So einfach ist das: Attr ist eigentlich eine vereinfachte Implementierung von getAttribute in nativem JS und RemoveAttr ist die Abkürzung für RemoveAttribute.
Gibt es also ein ähnliches Attribut wie attr()?
val() in jquery ähnelt ,
$(this).val(); Ruft den Wert eines Elementknotens ab, äquivalent zu $(this).attr("value");
$(this).val(value); Legt den Wert eines Elementknotens fest, äquivalent zu $(this).attr("value",value);2. jQuerys prop()-Methode:
Die Funktionprop() wird verwendet, um den Attributwert des Elements festzulegen oder zurückzugeben, das mit dem aktuellen jQuery-Objekt übereinstimmt.
Diese Funktion gehört zum jQuery-Objekt (Instanz). Wenn Sie eine Eigenschaft eines DOM-Elements entfernen müssen, verwenden Sie die Funktion „removeProp()“.
Grammatik
Diese Funktion wurde in jQuery 1.6 hinzugefügt. Die Funktion prop() hat die folgenden zwei Verwendungszwecke:
Verwendung 1:
jQueryObject.prop( propertyName [, value ] )
Legen Sie den Wert der angegebenen Eigenschaft propertyName fest oder geben Sie ihn zurück. Wenn der Wertparameter angegeben ist, bedeutet dies, dass der Wert der Eigenschaft propertyName auf value gesetzt wird. Wenn der Wertparameter nicht angegeben ist, bedeutet dies, dass der Wert der Eigenschaft propertyName zurückgegeben wird.Der Parameterwert kann auch eine Funktion sein, die die Funktion basierend auf allen übereinstimmenden Elementen durchläuft und ausführt. Der Zeiger in der Funktion zeigt auf das entsprechende DOM-Element. prop() übergibt außerdem zwei Parameter an die Funktion: Der erste Parameter ist der Index des Elements im passenden Element und der zweite Parameter ist der aktuelle Wert des propertyName-Attributs des Elements. Der Rückgabewert der Funktion ist der für das propertyName-Attribut des Elements festgelegte Wert.
Verwendung 2:
jQueryObject.prop( object )
Legen Sie den Wert einer beliebigen Anzahl von Eigenschaften gleichzeitig als Objekt fest. Jedes Attribut des Objektobjekts entspricht propertyName, und der Wert des Attributs entspricht value.Hinweis: Alle Operationen zum „Setzen von Attributen“ der Funktion prop() gelten für jedes Element, das mit dem aktuellen jQuery-Objekt übereinstimmt. Alle Operationen zum „Lesen von Attributen“ gelten nur für das erste übereinstimmende Element.
ParameterBitte finden Sie die entsprechenden Parameter anhand der im vorherigen Syntaxabschnitt definierten Parameternamen.
Parameter Beschreibung Eigenschaftsname String-Typ gibt den Attributnamen an. Wert Optional/Objekt/Funktionstyp gibt den Attributwert an, oder die Funktion , die den Attributwert zurückgibt. Objekt Objekt, das durch den Typ angegeben wird und zum Kapseln mehrerer Schlüssel-Wert-Paare und zum gleichzeitigen Festlegen mehrerer Eigenschaften verwendet wird. 返回值
prop()函数的返回值是任意类型,返回值的类型取决于当前prop()函数执行的是"设置属性"操作还是"读取属性"操作。
如果prop()函数执行的是"设置属性"操作,则返回当前jQuery对象本身;如果是"读取属性"操作,则返回读取到的属性值。
如果当前jQuery对象匹配多个元素,返回属性值时,prop()函数只以其中第一个匹配的元素为准。如果该元素没有指定的属性,则返回undefined。
prop()和attr()的主要区别:prop()函数针对的是DOM元素(JS Element对象)的属性,attr()函数针对的是DOM元素所对应的文档节点的属性。详情请查看jQuery函数attr()和prop()的区别。
注意事项
1、如果通过prop()函数更改和
2、如果使用prop()函数操作表单元素的checked、selected、disabled等属性,如果该元素被选中(或禁用),则返回true,否则(意即HTML中没有该属性)返回false。
3、prop()函数还可以设置或返回DOM元素的Element对象上的某些属性,例如:tagName、selectedIndex、nodeName、nodeType、ownerDocument、defaultChecked和defaultSelected等属性。
4、在IE9及更早版本中,如果使用prop()函数设置的属性值不是一个简单的原始值(String、Number、Boolean),并且在对应的DOM元素被销毁之前,该属性没有被移除,则可能会导致内存泄漏问题。如果你只是为了存储数据,建议你使用data()函数,以避免内存泄漏问题。
示例&说明
以下面这段HTML代码为例:
<div id="n1"> <p id="n2" class="demo test" data-key="UUID" data_value="1235456465">CodePlayer</p> <input id="n3" name="order_id" type="checkbox" value="1"> <input id="n4" name="order_id" type="checkbox" checked="checked" value="2"> </div>
我们编写如下jQuery代码:
var $n2 = $("#n2"); // prop()操作针对的是元素(Element对象)的属性,而不是元素节点(HTML文档)的属性 document.writeln( $n2.prop("data-key") ); // undefined document.writeln( $n2.prop("data_value") ); // undefined document.writeln( $n2.prop("id") ); // n2 document.writeln( $n2.prop("tagName") ); // P document.writeln( $n2.prop("className") ); // demo test document.writeln( $n2.prop("innerHTML") ); // CodePlayer document.writeln( typeof $n2.prop("getAttribute") ); // function // prop()设置的属性也是针对元素(Element对象),因此也可以通过元素本身直接访问 $n2.prop("prop_a", "CodePlayer"); document.writeln( $n2[0].prop_a ); // CodePlayer var n2 = document.getElementById("n2"); document.writeln( n2.prop_a ); // CodePlayer // 以对象形式同时设置多个属性,属性值可以是对象、数组等任意类型 $n2.prop( { prop_b: "baike", prop_c: 18, site: { name: "CodePlayer", url: "http://www.jb51.net/" } } ); document.writeln( $n2[0].prop_c ); // 18 document.writeln( $n2[0].site.url ); // http://www.jb51.net/ // 反选所有的复选框(没选中的改为选中,选中的改为取消选中) $("input:checkbox").prop("checked", function(index, oldValue){ return !oldValue; });
附:jquery中attr和prop的区别
在高版本的jquery引入prop方法后,什么时候该用prop?什么时候用attr?它们两个之间有什么区别?这些问题就出现了。
关于它们两个的区别,网上的答案很多。这里谈谈我的心得,我的心得很简单:
对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。
对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法。上面的描述也许有点模糊,举几个例子就知道了。
这个例子里元素的DOM属性有“href、target和class",这些属性就是元素本身就带有的属性,也是W3C标准里就包含有这几个属性,或者说在IDE里能够智能提示出的属性,这些就叫做固有属性。处理这些属性时,建议使用prop方法。
这个例子里元素的DOM属性有“href、id和action”,很明显,前两个是固有属性,而后面一个“action”属性是我们自己自定义上去的,元素本身是没有这个属性的。这种就是自定义的DOM属性。处理这些属性时,建议使用attr方法。使用prop方法取值和设置属性值时,都会返回undefined值。
再举一个例子:
是否可见
是否可见像checkbox,radio和select这样的元素,选中属性对应“checked”和“selected”,这些也属于固有属性,因此需要使用prop方法去操作才能获得正确的结果。
$("#chk1").prop("checked") == false $("#chk2").prop("checked") == true
如果上面使用attr方法,则会出现:
$("#chk1").attr("checked") == undefined $("#chk2").attr("checked") == "checked"
希望本文所述对大家jQuery程序设计有所帮助。
<script> $("ul li:eq(1)").attr({id:"lili"}); </script>
Ergebnis:
4.4 Holen Sie sich das zweite
- und legen Sie den Stil fest.
<script> $("ul li:eq(1)").attr({className:"lili"}); </script>
Ergebnis:
4.3 Rufen Sie die Einstellungs-ID des zweiten
- in
<script> $("ul li:eq(1)").attr({title:"不喝橘子汁",alt:"不是123"}); alert($("ul li:eq(1)").attr("title")); alert($("ul li:eq(1)").attr("alt")); </script>
Ergebnis:
4.2 Holen Sie sich die zweite

Es ist für Entwickler wichtig, zu verstehen, wie die JavaScript -Engine intern funktioniert, da sie effizientere Code schreibt und Leistungs Engpässe und Optimierungsstrategien verstehen kann. 1) Der Workflow der Engine umfasst drei Phasen: Parsen, Kompilieren und Ausführung; 2) Während des Ausführungsprozesses führt die Engine dynamische Optimierung durch, wie z. B. Inline -Cache und versteckte Klassen. 3) Zu Best Practices gehören die Vermeidung globaler Variablen, die Optimierung von Schleifen, die Verwendung von const und lass und die Vermeidung übermäßiger Verwendung von Schließungen.

Python eignet sich besser für Anfänger mit einer reibungslosen Lernkurve und einer kurzen Syntax. JavaScript ist für die Front-End-Entwicklung mit einer steilen Lernkurve und einer flexiblen Syntax geeignet. 1. Python-Syntax ist intuitiv und für die Entwicklung von Datenwissenschaften und Back-End-Entwicklung geeignet. 2. JavaScript ist flexibel und in Front-End- und serverseitiger Programmierung weit verbreitet.

Python und JavaScript haben ihre eigenen Vor- und Nachteile in Bezug auf Gemeinschaft, Bibliotheken und Ressourcen. 1) Die Python-Community ist freundlich und für Anfänger geeignet, aber die Front-End-Entwicklungsressourcen sind nicht so reich wie JavaScript. 2) Python ist leistungsstark in Bibliotheken für Datenwissenschaft und maschinelles Lernen, während JavaScript in Bibliotheken und Front-End-Entwicklungsbibliotheken und Frameworks besser ist. 3) Beide haben reichhaltige Lernressourcen, aber Python eignet sich zum Beginn der offiziellen Dokumente, während JavaScript mit Mdnwebdocs besser ist. Die Wahl sollte auf Projektbedürfnissen und persönlichen Interessen beruhen.

Die Verschiebung von C/C zu JavaScript erfordert die Anpassung an dynamische Typisierung, Müllsammlung und asynchrone Programmierung. 1) C/C ist eine statisch typisierte Sprache, die eine manuelle Speicherverwaltung erfordert, während JavaScript dynamisch eingegeben und die Müllsammlung automatisch verarbeitet wird. 2) C/C muss in den Maschinencode kompiliert werden, während JavaScript eine interpretierte Sprache ist. 3) JavaScript führt Konzepte wie Verschlüsse, Prototypketten und Versprechen ein, die die Flexibilität und asynchrone Programmierfunktionen verbessern.

Unterschiedliche JavaScript -Motoren haben unterschiedliche Auswirkungen beim Analysieren und Ausführen von JavaScript -Code, da sich die Implementierungsprinzipien und Optimierungsstrategien jeder Engine unterscheiden. 1. Lexikalanalyse: Quellcode in die lexikalische Einheit umwandeln. 2. Grammatikanalyse: Erzeugen Sie einen abstrakten Syntaxbaum. 3. Optimierung und Kompilierung: Generieren Sie den Maschinencode über den JIT -Compiler. 4. Führen Sie aus: Führen Sie den Maschinencode aus. V8 Engine optimiert durch sofortige Kompilierung und versteckte Klasse.

Zu den Anwendungen von JavaScript in der realen Welt gehören die serverseitige Programmierung, die Entwicklung mobiler Anwendungen und das Internet der Dinge. Die serverseitige Programmierung wird über node.js realisiert, die für die hohe gleichzeitige Anfrageverarbeitung geeignet sind. 2. Die Entwicklung der mobilen Anwendungen erfolgt durch reaktnative und unterstützt die plattformübergreifende Bereitstellung. 3.. Wird für die Steuerung von IoT-Geräten über die Johnny-Five-Bibliothek verwendet, geeignet für Hardware-Interaktion.

Ich habe eine funktionale SaaS-Anwendung mit mehreren Mandanten (eine EdTech-App) mit Ihrem täglichen Tech-Tool erstellt und Sie können dasselbe tun. Was ist eine SaaS-Anwendung mit mehreren Mietern? Mit Multi-Tenant-SaaS-Anwendungen können Sie mehrere Kunden aus einem Sing bedienen

Dieser Artikel zeigt die Frontend -Integration mit einem Backend, das durch die Genehmigung gesichert ist und eine funktionale edtech SaaS -Anwendung unter Verwendung von Next.js. erstellt. Die Frontend erfasst Benutzerberechtigungen zur Steuerung der UI-Sichtbarkeit und stellt sicher, dass API-Anfragen die Rollenbasis einhalten


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

SublimeText3 Englische Version
Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

Dreamweaver CS6
Visuelle Webentwicklungstools

MantisBT
Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft