-
eq返回的是一個jQuery對象,get返回的是一個DOM對象。查看全部
-
要想理解為什么ready先執(zhí)行,load后執(zhí)行就要先了解下DOM文檔加載的步驟: (1) 解析HTML結(jié)構(gòu)。 (2) 加載外部腳本和樣式表文件。 (3) 解析并執(zhí)行腳本代碼。 (4) 構(gòu)造HTML DOM模型。//ready (5) 加載圖片等外部文件。 (6) 頁面加載完畢。//load查看全部
-
var aQuery = function(selector) { //強制為對象 if (!(this instanceof aQuery)) { return new aQuery(selector); } var elem = document.getElementById(/[^#].*/.exec(selector)[0]); this.length = 1; this[0] = elem; this.context = document; this.selector = selector; this.get = function(num) { return this[num]; } return this; }查看全部
-
全局變量是魔鬼, 匿名函數(shù)可以有效的保證在頁面上寫入JavaScript,而不會造成全局變量的污染,通過小括號,讓其加載的時候立即初始化,這樣就形成了一個單例模式的效果從而只會執(zhí)行一次。查看全部
-
jQuery五大部分:AJAX、動畫、DOM操作、選擇器、事件 ;(function(gloabal,factory){ factory(global); }()); 開頭的分號符是為了避免跟其它文件壓縮合并或執(zhí)行時發(fā)生錯誤。查看全部
-
JQ中的hasClass用來判斷元素中是否存在某個class查看全部
-
addClass是用來添加class removeClass是用來刪除class toggleClass是:在元素中沒有需要添加的class時,為元素添加class,當(dāng)元素已經(jīng)包含需要添加的class時,將這個class從元素class中刪除掉。 $(function () { $div1 = $("#div1"); $div1.addClass("c1"); $div1.removeClass("c1"); $div1.toggleClass("c1"); })查看全部
-
JQ中的attr和prop有什么區(qū)別: 1.實現(xiàn)方式不同。 attr使用的是js原生的setAttribute和getAttribute來 實現(xiàn)的。 如:a.setAttribute("titel","hello") prop使用的是js中的 . 或者[]來實現(xiàn)的。 如:a.titel="hello" 2.對于html原生的屬性(如:title),attr和prop的效果是一樣的,但是對于自定義屬性,兩者的效果不同。 不同點在于:通過attr添加的自定義屬性,在dom節(jié)點中可以看見,而通過prop添加的自定義屬性,在dom節(jié)點中不可見。 相同點是:不論是否在dom中可見,兩種方式添加的自定義屬性其實都已經(jīng)添加到節(jié)點中了,可以通過相應(yīng)的獲取方式來獲得該屬性。查看全部
-
JQ中的attr和prop有什么區(qū)別: 1.實現(xiàn)方式不同。 attr使用的是js原生的setAttribute和getAttribute來 實現(xiàn)的。 如:a.setAttribute("titel","hello") prop使用的是js中的 . 或者[]來實現(xiàn)的。 如:a.titel="hello" 2.對于html原生的屬性(如:title),attr和prop的效果是一樣的,但是對于自定義屬性,兩者的效果不同。查看全部
-
JQ中的attr和prop有什么區(qū)別?查看全部
-
在使用queue時,使用promise().done()可以等待隊列中的所有函數(shù)都執(zhí)行完成后再執(zhí)行: $(function () { function aa(next) { this.x = 1; self = this; self.zz=function() { console.log("aa:" + self.x); self.x++; if (self.x > 10) { next(); clearInterval(z); } } var z=setInterval("self.zz()", 100); } function bb(next) { this.y = 1; self = this; self.kk = function () { console.log("bb:" + self.y); self.y++; if (self.y > 10) { next(); clearInterval(z); } } var z = setInterval("self.kk()", 100); } function cc() { console.log("ccccccccccc"); } $div1 = $("#div1"); $div1.queue(aa).queue(bb).promise().done(cc); })查看全部
-
javascript引擎本身是單線程的,但是瀏覽器是多線程。 javascrip引擎是事件驅(qū)動的,通過時間驅(qū)動可以實現(xiàn)多線程的效果。 http://blog.csdn.net/kongls08/article/details/6996518 另外,因為javascript本身是單線程的,所以不用考慮多線程的一些事情,比如:臨界資源,互斥鎖等。查看全部
-
JavaScript引擎是單線程運行的,瀏覽器無論在什么時候都只且只有一個線程在運行JavaScript程序. JavaScript引擎用單線程運行也是有意義的,單線程不必理會線程同步這些復(fù)雜的問題,問題得到簡化.查看全部
-
JavaScript引擎是單線程運行的,瀏覽器無論在什么時候都只且只有一個線程在運行JavaScript程序.查看全部
-
對于js中的數(shù)組操作: push是將一個元素加到數(shù)組的最后面 shift是將數(shù)組的第一個元素取出。 unshift是將一個元素加到數(shù)組的最前面 var x = [1, 2, 3]; x.push(4); console.log(x); a=x.shift(); console.log(x); x.unshift(6); console.log(x);查看全部
舉報
0/150
提交
取消