1.透過方法回傳Jquery物件實例
用 var someDiv = $(‘#someDiv').hide(); 代替 var someDiv = $(‘#someDiv'); someDiv.hide();
2.使用find來找出
用$('#someDiv').find('p.someClass').hide(); 取代$('#someDiv p.someClass').hide();因為可以不必觸發Jquery的Sizzle引擎,同時在寫選擇符的時候盡量讓您的選擇符簡單同時優化最右邊的選擇符
3.不要濫用$(this)
用$('#someAnchor').click(function() { alert( this.id ); }); 代替$('#someAnchor').click(function() {alert($(this). attr('id'));});
4.ready的簡寫形式
用 $(function() { }); 代替 $(document).ready(function() {});
5.讓你的程式碼安全
方法1(使用noConflict)
var j = jQuery.noConflict();
j(‘#someDiv').hide();
// The line below will reference some other library's $ function.
$(‘someDiv').style.display = ‘none';
方法2(傳入參數Jquery)
(function($) {
// Within this function, $ will always refer to jQuery
})(jQuery);
方法3(透過ready方法)
jQuery(document).ready(function($) {
// $ refers to jQuery
});
6.簡化程式碼
用each取代for,使用數組保存臨時變量,使用document fragment,這其實和寫原生的Javascript需要注意的一樣。
7.使用Ajax的方法
Jquery提供了get getJSON post ajax這些有用的ajax方法
8.存取原生的屬性和方法
例如取得元素id的方法有
// OPTION 1 – Use jQuery
var id = $(‘#someAnchor').attr(‘id');
// OPTION 2 – Access the DOM element
var id = $(‘#someAnchor')[0].id;
// OPTION 3 – Use jQuery's get method
var id = $(‘#someAnchor').get(0).id;
// OPTION 3b – Don't pass an index to get
anchorsArray = $(‘.someAnchors').get();
var thirdId = anchorsArray[2].id;
9.使用PHP來檢查Ajax請求
透過使用xhr.setRequestHeader(“X-Requested-With”, “XMLHttpRequest”); 伺服器端如PHP就可以透過
function isXhr() {
return $_SERVER['HTTP_X_REQUESTED_WITH'] === ‘XMLHttpRequest';
}
來檢查是不是Ajax請求,在一些禁用Javascript的情況下可能會用到
10.Jquery和$的關係
在Jquery程式碼的最下面,可以看到下面的程式碼
window.jQuery = window.$ = jQuery; $其實就是Jquery的一個shortcut
11.條件載入Jquery
<script>!window.jQuery && document.write(‘<script src=”js/jquery-1.4.2.min.js”></script>')
如果CDN沒有下載到Jquery,則從本地讀取
12.Jquery Filters
<script><br /> $(‘p:first').data(‘info', ‘value'); // populates $'s data object to have something to work with<br /> $.extend(<br /> jQuery.expr[":"], {<br /> block: function(elem) {<br /> return $(elem).css(“display”) === “block”;<br /> },<br /> hasData : function(elem) {<br /> return !$.isEmptyObject( $(elem).data() );<br /> }<br /> }<br /> );<br /> $(“p:hasData”).text(“has data”); // grabs paras that have data attached<br /> $(“p:block”).text(“are block level”); // grabs only paragraphs that have a display of “block”<br /> </script>
註:$.expr[":"]等價於$.expr.filters
13.hover方法
$(‘#someElement').hover(function() {
//在這裡可以使用toggle方法來實現滑過和滑出的效果
});
14.傳入屬性物件
當建立一個元素的時候,Jquery1.4可以傳入一個屬性物件
$(‘', {
id : ‘someId',
className : ‘someClass',
href : ‘somePath.html'
});
甚至是Jquery指定的屬性或事件如text, click

实现方法:1、用“$("img").delay(毫秒数).fadeOut()”语句,delay()设置延迟秒数;2、用“setTimeout(function(){ $("img").hide(); },毫秒值);”语句,通过定时器来延迟。

区别:1、axios是一个异步请求框架,用于封装底层的XMLHttpRequest,而jquery是一个JavaScript库,只是顺便封装了dom操作;2、axios是基于承诺对象的,可以用承诺对象中的方法,而jquery不基于承诺对象。

增加元素的方法:1、用append(),语法“$("body").append(新元素)”,可向body内部的末尾处增加元素;2、用prepend(),语法“$("body").prepend(新元素)”,可向body内部的开始处增加元素。

修改方法:1、用css()设置新样式,语法“$(元素).css("min-height","新值")”;2、用attr(),通过设置style属性来添加新样式,语法“$(元素).attr("style","min-height:新值")”。

在jquery中,apply()方法用于改变this指向,使用另一个对象替换当前对象,是应用某一对象的一个方法,语法为“apply(thisobj,[argarray])”;参数argarray表示的是以数组的形式进行传递。

删除方法:1、用empty(),语法“$("div").empty();”,可删除所有子节点和内容;2、用children()和remove(),语法“$("div").children().remove();”,只删除子元素,不删除内容。

去掉方法:1、用“$(selector).removeAttr("readonly")”语句删除readonly属性;2、用“$(selector).attr("readonly",false)”将readonly属性的值设置为false。

on()方法有4个参数:1、第一个参数不可省略,规定要从被选元素添加的一个或多个事件或命名空间;2、第二个参数可省略,规定元素的事件处理程序;3、第三个参数可省略,规定传递到函数的额外数据;4、第四个参数可省略,规定当事件发生时运行的函数。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

禪工作室 13.0.1
強大的PHP整合開發環境