Ich habe einige der ausführlicheren Schlupflöcher von JS hier und dort gelernt, und habe ein paar Dinge, die ich brauche, um Hilfe zu bekommen.Javascript Reference Comprehension
;(function($){
$.fn.makeRed1 = function() {
return $.each(this, function() {
$(this).css('background-color', '#FF0000');
});
}
})(jQuery)
;(function($){
$.fn.makeRed2 = function() {
$(this).css('background-color', '#FF0000');
}
})(jQuery)
Beide dieser Arbeit richtig. Warum?
Jeder, der über das Schreiben von Plugins spricht, sagt immer die Methode "return each". Was ist der Grund? Ich brauche jemanden, der mir genau sagt, was passiert, wenn jede dieser Methoden verwendet wird, damit ich den Fluss verstehen kann.
Danke.
Ok, aber da alle Elemente davon betroffen sind, ob du "each" verwendest oder nicht, warum "each" verwenden? Wenn mein Verständnis korrekt ist: return $ (this) .css ('background-color', '# FF0000'); 'würde das jQ-Objekt trotzdem zur Verkettung zurückgeben. Ich interessiere mich mehr für die Verwendung von "jeder" oder nicht. – Spot
Betrachten Sie ein komplexeres Plugin/eine Funktion, die aus mehreren Anweisungen besteht, von denen viele nicht miteinander verkettet sind und von denen einige jQuery möglicherweise nicht zurückgeben. Die Verwendung der einzelnen Syntax bietet einen praktischen Mechanismus, um all dies in eine Methode einzubetten, mit der Sie Ihren Code schreiben können, ohne einen Verweis auf die ursprüngliche jQuery-Sammlung zu behalten. – tvanfosson
Ah ok, vielen Dank. – Spot