Różnica wartości, prototypu i właściwości
DOBRZE! Przede wszystkim to pytanie pochodzi od człowieka, który wykopuje zbyt głęboko (i może się zgubić) we wszechświecie jQuery.
W moim rezerwacie odkryłem, że głównym wzorcem jquery jest coś takiego (jeśli potrzebna jest poprawka, to dobrze):
(function (window, undefined) {
jQuery = function (arg) {
// The jQuery object is actually just the init constructor 'enhanced'
return new jQuery.fn.init(arg);
},
jQuery.fn = jQuery.prototype = {
constructor: jQuery,
init: function (selector, context, rootjQuery) {
// get the selected DOM el.
// and returns an array
},
method: function () {
doSomeThing();
return this;
},
method2: function () {
doSomeThing();
return this;,
method3: function () {
doSomeThing();
return this;
};
jQuery.fn.init.prototype = jQuery.fn;
jQuery.extend = jQuery.fn.extend = function () {
//defines the extend method
};
// extends the jQuery function and adds some static methods
jQuery.extend({
method: function () {}
})
})
Gdy$
inicjujejQuery.prototype.init
inicjuje i zwraca tablicę elementów. Ale nie mogłem zrozumieć, jak dodaje metodę jQuery.css
lub.hide
,itp. do tej tablicy.
Dostaję metody statyczne. Ale nie mógł uzyskać tego, jak zwraca i tablicy elementów ze wszystkimi tymi metodami.