Heim  >  Artikel  >  Web-Frontend  >  Detaillierte Erläuterung des Funktionsbeispiels jQuery.clone()

Detaillierte Erläuterung des Funktionsbeispiels jQuery.clone()

巴扎黑
巴扎黑Original
2018-05-19 16:16:181903Durchsuche

Mit der Funktion

clone() wird eine Kopie des aktuellen Satzes übereinstimmender Elemente geklont und in Form eines jQuery-Objekts zurückgegeben. Sie können es auch einfach so verstehen: Klonen Sie das aktuelle jQuery-Objekt.

Sie können auch angeben, ob zusätzliche Daten (Funktion data()) dieser übereinstimmenden Elemente (sogar ihrer untergeordneten Elemente) kopiert und Ereignisse gebunden werden sollen.

Diese Funktion gehört zum jQuery-Objekt (Instanz).

Syntax

jQueryObject.clone( withDataAndEvents [, deepWithDataAndEvents ] )

Parameter

Parameterbeschreibung

withDataAndEvents Optionaler/boolescher Typ, ob die zusätzlichen Daten und Bindungsereignisse des Elements gleichzeitig kopiert werden sollen. Der Standardwert ist false.

deepWithDataAndEvents Optionaler/Boolescher Typ Gibt an, ob die zusätzlichen Daten und Bindungsereignisse aller Unterelemente des Elements gleichzeitig kopiert werden sollen. Der Standardwert ist der Wert des Parameters withDataAndEvents.

clone() wird hauptsächlich zum Klonen einer Kopie des aktuellen jQuery-Objekts verwendet.

jQuery 1.5 neue Unterstützung: clone() unterstützt den zweiten Parameter deepWithDataAndEvents. Dieser Parameter gibt an, ob zusätzliche Daten und Bindungsereignisse für alle untergeordneten Elemente des geklonten Elements gleichzeitig kopiert werden sollen.

Hinweis:

1. Vor jQuery 1.4 hat die Funktion clone() nur zusätzlich das Bindungsereignis des Elements kopiert. Ab Version 1.4 begann sie, das Kopieren der zusätzlichen Daten des Elements zu unterstützen Element.

2. In Version 1.5.0 (nur 1.5.0) wurde der Standardwert des Parameters withDataAndEvents fälschlicherweise auf „true“ gesetzt. Ab 1.5.1 wurde sein Standardwert wieder auf „false“ geändert.

Rückgabewert

clone()Der Rückgabewert der Funktion ist vom Typ jQuery und gibt eine Klonkopie des aktuellen jQuery-Objekts zurück.

Hinweis: Aus Leistungsgründen kopiert die Funktion clone() nicht die Dynamik einiger Formularelemente, wie z. B. den vom Benutzer in 4750256ae76b6b9d804861d8f69e79d3 eingegebenen Inhalt und die vom Benutzer in 7ba0f436fba669c1ade1ff019b7216c4. Die Dynamik des d5fd7aea971a85678ba271703566ebfd-Elements wird jedoch kopiert, beispielsweise der vom Benutzer im Text eingegebene Inhalt und der vom Benutzer ausgewählte Status des Kontrollkästchens.

Beispiel & Beschreibung

Die Funktion clone() wird verwendet, um das aktuelle jQuery-Objekt zu klonen. Bitte beachten Sie den folgenden HTML-Code als Beispiel:

<p id="n1">
    <input id="n2" type="button" value="按钮1" />
    <input id="n3" type="button" value="按钮2" />
</p>

Der folgende jQuery-Beispielcode wird verwendet, um die spezifische Verwendung der clone()-Funktion zu demonstrieren:

// Aktuelle jQuery-Version : 1.11.1

$(":button").click( function(){

document.writeln( this.value );

} );

var $n2 = $("#n2");

$n2.data("myData", "Additional data");

/ /Keine zusätzlichen zu klonenden Daten und Bindungsereignis

var $clonedN2 = $n2.clone(); // Beide Parameter sind standardmäßig auf false

document.writeln( $clonedN2.data(" myData") ) ; // undefiniert

$clonedN2.trigger("click"); // (Kein gebundenes Klickereignis, keine Antwortausgabe)

//Zusätzliche Daten und gebundene Ereignisse klonen gleichzeitig

var $clonedN2WithCopy = $n2.clone( true ); // Zwei Parameter: true, true (der zweite Parameter ist nicht festgelegt, der Standardwert ist der Wert des ersten Parameters)

document.writeln( $clonedN2WithCopy.data("myData") ); // Zusätzliche Daten

$clonedN2WithCopy.trigger("click"); // Button 1

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Funktionsbeispiels jQuery.clone(). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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