jQuery是一種著名的JavaScript庫,它是一個輕量級的HTML文檔“操作”工具,能夠使開發者快速地完成復雜的jQuery效果,簡單來說,它是一個快速、簡潔、多功能的JavaScript庫。而fn是jQuery的一個方法,通過擴展jQuery.fn對象的prototype屬性,使得插件也能使用jQuery的方法。
//在jQuery的原型中定義一個新的方法fn.extend() jQuery.fn.extend({ //這個是一個實現顏色漸變效果的方法 animateColor: function() { this.each(function() { var el = jQuery(this); //通過類似setTimeout的方式來實現顏色漸變效果 setTimeout(function() { el.css("backgroundColor", "#f00"); }, 1000); setTimeout(function() { el.css("backgroundColor", "#0f0"); }, 2000); setTimeout(function() { el.css("backgroundColor", "#00f"); }, 3000); }); return this; } });
上述代碼中,在jQuery的fn上定義了一個新方法animateColor,在調用時,以鏈式結構調用所有匹配的元素。在animateColor的實現中,使用了setTimeout來實現顏色逐漸變換的效果。
jQuery.fn命名空間是因為jQuery的插件機制使得插件也能使用jQuery的方法。插件($.< plugin>)是稱為jQuery對象方法的方法定義,可以自定義增加或者修改jQuery的原有方法。fn即jQuery.prototype,設計這個命名空間是為了讓插件能夠擴展jQuery對象,從而為桌面和移動端開發應用程序提供了很多的便利。fn中包括的方法是jQuery對象的所有公共方法,$.fn.myPlugin()是合法的,而$.myPlugin()是不合法的。
上一篇jquery each
下一篇mysql中不重復的數據