Heim > Web-Frontend > js-Tutorial > Hauptteil

Detaillierte Erläuterung der Attribute und zugehörigen Operationen von Elementen in jQuery_jquery

WBOY
Freigeben: 2016-05-16 15:44:57
Original
1247 Leute haben es durchsucht

Elementattribute

Die Attribute des

-Elements können viele nützliche Informationen enthalten. Daher ist es sehr wichtig, wie der Wert im Attribut festgelegt oder abgerufen wird.

Die $.fn.attr-Methode von jQuery kann als Setter und Getter verwendet werden, um den Wert eines Attributs festzulegen oder abzurufen. Ähnlich wie bei der Verwendung von $.fn.css kann $.fn.attr entweder ein einzelnes Attribut gleichzeitig oder mehrere Attribute (Objekte) akzeptieren:

$('a').attr('href', 'allMyHrefsAreTheSameNow.html');
$('a').attr({
  'title' : 'all titles are the same too!',
  'href' : 'somethingNew.html'
});

Nach dem Login kopieren

Wenn Sie Objekte im obigen Code schreiben, wird dieser in mehreren Zeilen geschrieben, was die Lesbarkeit verbessert.

$('a').attr('href'); // 返回选择其中第一个超链接的链接地址

Nach dem Login kopieren

Sobald Elemente in der Ergebnismenge des Selektors vorhanden sind, können diese Elemente als Referenzpunkte zum Durchqueren anderer Elemente verwendet werden. Einzelheiten dazu, wie jQuery Elemente durchläuft, finden Sie unter http://api.jquery.com/category/traversing/, z. B.:

$('h1').next('p');
$('div:visible').parent();
$('input[name=first_name]').closest('form');
$('#myList').children();
$('li.selected').siblings();

Nach dem Login kopieren

Sie können auch die Methode $.fn.each verwenden, um die Elemente im Ergebnissatz einzeln zu verarbeiten:

$('#myList li').each(function(idx, el) {
  console.log(
    'Element ' + idx +
    'has the following html: ' +
    $(el).html()
  );
});

Nach dem Login kopieren

Elemente verschieben, kopieren, löschen

Wenn Sie die Position eines Elements verschieben möchten:

// 把第一个列表移至最后
var $li = $('#myList li:first').appendTo('#myList');

// 另外一种方法,也能达到同样效果
$('#myList').append($('#myList li:first'));

Nach dem Login kopieren

Ein Element kopieren

// 把第一个 li 做一份拷贝,然后放置列表的最后
$('#myList li:first').clone().appendTo('#myList');

Nach dem Login kopieren

Wenn Sie beim Kopieren eines Elements die Attribute, Ereignisse und andere Informationen des Elements zusammen kopieren möchten, geben Sie beim Aufruf von $.fn.clone einfach den Parameter true an.

Lassen Sie uns über das Löschen von Elementen sprechen. In jQuery gibt es zwei Methoden zum Löschen von Elementen: $.fn.remove und $.fn.detach. Beide Methoden können Elemente von der Seite löschen und die Rückgabewerte dieser beiden Methoden Es handelt sich bei allen um gelöschte Elemente. Der Unterschied besteht darin, dass das von $.fn.remove zurückgegebene Element keine Zusatzinformationen des Elements mehr enthält, z. B. ID- und Klasseninformationen, und auch keine an das Element gebundenen Ereignisse. $.fn.detach ist unterschiedlich. Die Zusatzinformationen und Ereignisse im gelöschten Element werden ebenfalls gespeichert. Welche verwendet werden sollen, hängt von den tatsächlichen Anforderungen ab.
Neues Element erstellen

jQuery kann neue Elemente schnell ersetzen:

$('<p>这是一个新段落</p>');
$('<li class="new">新列表元素</li>');

$('<a/>', {
  html : '这是一个 <strong>新</strong> 超链接',
  'class' : 'new',
  href : 'foo.html'
});

Nach dem Login kopieren

Beachten Sie, dass im oben übergebenen JavaScript-Objekt das zweite Attribut class in Anführungszeichen steht, da es sich bei html und href um ein reserviertes Wort von JavaScript handelt, sodass keine Anführungszeichen erforderlich sind.

Nach dem Erstellen eines neuen Elements wird das neue Element nicht automatisch zur Seite hinzugefügt. Um es zur Seite hinzuzufügen, können Sie die folgende Methode verwenden:

var $myNewElement = $('<p>New element</p>');
$myNewElement.appendTo('#content');

$myNewElement.insertAfter('ul:last'); // 此操作会把 p 元素从 #content 中移除
$('ul').last().after($myNewElement.clone()); // 当然也可以克隆一个出来,现在 #content 中有两个 p 了哦

Nach dem Login kopieren

Genau genommen ist es nicht notwendig, das neu erstellte Element in einer Variablen zu speichern. Es kann nach der Erstellung direkt zur Seite hinzugefügt werden. Da das neu erstellte Element jedoch häufig mehrfach verwendet wird, muss es in einer Variablen zwischengespeichert werden, damit es nicht wiederholt erstellt werden muss.

Sie können es sogar erstellen, wenn Sie der Seite ein Element hinzufügen, aber in diesem Fall gibt es keine Möglichkeit, einen Verweis auf das neu erstellte Element zu erhalten:

$('ul').append('<li>list item</li>');

Nach dem Login kopieren

Das Hinzufügen neuer Elemente zur Seite ist sehr einfach. Wenn Sie jedoch viele, viele neue Elemente zur Seite hinzufügen müssen, kann es zu Leistungsproblemen kommen. Denn jedes Mal, wenn der Seite ein Element hinzugefügt wird, muss der HTML-Code der gesamten Seite als String verkettet werden, was sehr leistungsintensiv ist. In diesem Fall gibt es in der Regel folgende Lösungen:

var myItems = [], $myList = $('#myList');

for (var i=0; i<100; i++) {
  myItems.push('<li>item ' + i + '</li>');
}

$myList.append(myItems.join(''));

Nach dem Login kopieren

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