2016-06-05 12 views
-2

Ich versuche, einige HTML-Elemente mit jQuery zu schaffen, und ich fand dieses Bit des Codes über das Internet, aber ich konnte einfach keine Erklärungen oder Dokumentationen darauf finden (ich habe gerade erst angefangen zu lernen) jQuery) oder ich nicht wußte, wie man sucht:

.after($('<div />', { 
    class: 'test', 
    text: "a div", 
    click: function(e){ 
     e.preventDefault(); 
     alert("test") 
    }})); 

ich weiß, dass .after() erzeugt und fügt ein Element nach einem bestimmten hTML-Elemente, aber ich habe es nur wie diese .after("<tag>some text here</tag") ich habe verwendet gesehen keine Ahnung, ob diese Person die Schlüssel: Wert-Paare bekommen hat. Sind sie "Standard"? Existiert eine Liste im Internet? Was hat er dort eigentlich gemacht? Wie kann ich nachsehen, was zwischen $() im Internet geschrieben wird? Ich habe versucht, etwas wie "$() Argumente jquery", ".after() mehrere Parameter jquery" und andere, aber habe nichts gefunden, um für mich einen Sinn zu ergeben. Ich würde mich über dieses Thema freuen. Danke!

+0

Es bedeutet nur ein div mit der Klasse Test mit Text ein div und eine Klick-Funktion – Li357

+0

Leute, die downvoting ein bisschen hart ist, ist es nicht? Wir waren alle einmal neu in Sachen, und Sie werfen eine Funktion mit einem Symbol für einen Namen und ein wenig genutztes Feature hinein ... (Ja, ein gründliches Lesen der Dokumentation würde es finden ...) –

+0

Warum so viele downvotes? Sie ist begierig zu lernen und konnte keine nützlichen Dokumentationen/Ressourcen finden, um das Code-Snippet zu verstehen. – undefined

Antwort

2

Das ist nur after mit einem Argument, das das Ergebnis des Aufrufs $() mit einer HTML-Zeichenfolge zum Parsen und zusätzliche Eigenschaften zum Festlegen ist; Details siehe jQuery(html, attributes). Es ist im Grunde wie dies zu tun:

var newElement = $('<div />'); 
newElement.addClass('test'); 
newElement.text("a div") 
newElement.on("click", function(e){ 
    e.preventDefault(); 
    alert("test") 
}); 
whateverWasHere.after(newElement); 
+0

Also die Schlüssel "Klasse", "Text", "Klick" wäre das gleiche wie einige jquery Funktionen Namen. Wenn dies zutrifft, kann es jedes Mal angewendet werden, wenn Sie auf diese Weise einige Attribute festlegen möchten. Oder die Namen der Schlüssel können zufällig gewählt werden? Diese Seite http://api.jquery.com/Types/#PlainObject oder diese http://api.jquery.com/jQuery/#jQuery-html-attributes löste die Dinge nicht sehr. Danke auch für Ihr Verständnis! Schön, Leute im Internet zu haben, die wirklich helfen, anstatt zur Kritik zu springen und nichts konstruktiv zu machen. – Irina

+0

@Irina: Die Dokumente, die Sie verknüpft haben *, decken die Schlüssel ab: * "Ab jQuery 1.4 kann das zweite Argument von jQuery() ein einfaches Objekt akzeptieren, das aus einer Obermenge der Eigenschaften besteht, die an die [...] übergeben werden können. .attr()] (http://api.jquery.com/attr/) Methode. "* und *" Ab jQuery 1.4 kann jeder Event-Typ übergeben werden, und die folgenden jQuery-Methoden können aufgerufen werden: 'val ',' css', 'html',' text', 'data',' width', 'height' oder' offset'. "* Mit" angerufen "meinen sie als Schlüssel, wie' text' in Ihrem war Beispiel. –