如果判斷網站是用的哪個js框架,很簡單,打開這個網站后,在瀏覽器中按鍵盤的F12鍵,會出現(xiàn)開發(fā)人員工具,拿谷歌瀏覽器來說:
創(chuàng)新互聯(lián)建站是專業(yè)的柳江網站建設公司,柳江接單;提供成都網站建設、成都網站制作,網頁設計,網站設計,建網站,PHP網站建設等專業(yè)做網站服務;采用PHP框架,可快速的進行柳江網站開發(fā)網頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網站,專業(yè)的做網站團隊,希望更多企業(yè)前來合作!
找到一下這個網站引用的是哪個框架的庫,就知道是jquery還是其他框架了。
還有一種方法就是看源碼中代碼的寫法,jquery和zepto又些區(qū)別:
1.?Zepto?對象?不能自定義事件
例如執(zhí)行:?$({}).bind('cust',?function(){});
結果:??TypeError:?Object?has?no?method?'addEventListener'
解決辦法是創(chuàng)建一個脫離文檔流的節(jié)點作為事件對象:
例如:?$('
').bind('cust',?function(){});
2.?Zepto?的選擇器表達式:?[name=value]??中value?必須用?雙引號?"??or?單引號?'?括起來
例如執(zhí)行:$('[data-userid=123123123]')
結果:Error:?SyntaxError:?DOM?Exception?12
解決辦法:?$('[data-userid="123123123]"')?or?$("[data-userid='123123123']")
3.Zepto?是根據標準瀏覽器寫的,所以對于節(jié)點尺寸的方法只提供?width()?和?height(),省去了?innerWidth(),?innerHeight(),outerWidth(),outerHeight()
4.Zepto?的each?方法只能遍歷?數組,不能遍歷JSON對象
5.Zepto?的animate?方法參數說明?:
例如:$("data-userid='123123123'").animate({?opacity?:?0},{duration:'slow'});
duration?:?'slow'?是無效的,需要修改為?duration?:?600
1、針對移動端程序
zepto有一些基本的觸摸事件可以用來做觸摸屏交互(tap事件、swipe事件),zepto是不支持IE瀏覽器的。
2、DOM操作的區(qū)別
添加id時jquery不會生效而zepto會生效。
3、事件觸發(fā)的區(qū)別
使用jquery時load事件的處理函數不會執(zhí)行;使用zepto時load事件的處理函數會執(zhí)行。
4、事件委托的區(qū)別
zepto中,選擇器上所有的委托事件都依次放入到一個隊列中,而在jquery中則委托成獨立的多個事件。
5、js精簡方面
zepto是jquery的精簡,針對移動端去除了大量jquery的兼容代碼。
6、其他方面
zepto中沒有為原型定義extend方法而jquery有;zepto的each方法只能遍歷數組,不能遍歷JSON對象。
1. jQuery更多是在PC端,因此,考慮了很多低級兼容性問題;而Zepto.js則是直接拋棄了這些問題,顯得很輕盈;
2.Zepto.js在移動端被運用的更加廣泛;更注重在移動端的使用
3. jQuery的底層是通過DOM來實現(xiàn)效果的,zepto.js 是用css3來實現(xiàn)的;
4. Zepto.js可以說是輕盈版本的jQuery。(by三人行慕課)
1. Zepto 對象 不能自定義事件
例如執(zhí)行: $({}).bind('cust', function(){});
結果: TypeError: Object has no method 'addEventListener'
解決辦法是創(chuàng)建一個脫離文檔流的節(jié)點作為事件對象:
例如: $('').bind('cust', function(){});
2. Zepto 的選擇器表達式: [name=value] 中value 必須用 雙引號 " or 單引號 ' 括起來
例如執(zhí)行:$('[data-userid=123123123]')
結果:Error: SyntaxError: DOM Exception 12
解決辦法: $('[data-userid="123123123]"') or $("[data-userid='123123123']")
2-1.zepto的選擇器沒有辦法選出 $("div[name!='abc']") 的元素
2-2.zepto獲取select元素的選中option不能用類似jq的方法$('option[selected]'),因為selected屬性不是css的標準屬性
應該使用$('option').not(function(){ return !this.selected })
比如:jq:$this.find('option[selected]').attr('data-v') * 1
zepto:$this.find('option').not(function() {return !this.selected}).attr('data-v') * 1
但是獲取有select中含有disabled屬性的元素可以用 $this.find("option:not(:disabled)") 因為disabled是標準屬性
2-3、zepto在操作dom的selected和checked屬性時盡量使用prop方法,以下是官方說明:
3.Zepto 是根據標準瀏覽器寫的,所以對于節(jié)點尺寸的方法只提供 width() 和 height(),省去了 innerWidth(), innerHeight(),outerWidth(),outerHeight()
Zepto.js: 由盒模型( box-sizing )決定
jQery: 忽略盒模型,始終返回內容區(qū)域的寬/高(不包含 padding 、 border )解決方式就是使用 .css('width') 而不是 .width() 。
3-1.邊框三角形寬高的獲取
假設用下面的 HTML 和 CSS 畫了一個小三角形:
div class="caret"/div
.caret {
width: 0;
height: 0;
border-width: 0 20px 20px;
border-color: transparent transparent blue;
border-style: none dotted solid;
}
jQuery 使用 .width() 和 .css('width') 都返回 ,高度也一樣;
Zepto 使用 .width() 返回 ,使用 .css('width') 返回 0px 。
所以,這種場景,jQuery 使用 .outerWidth() / .outerHeight() ;Zepto 使用 .width() / .height() 。
3-2.offset()
Zepto.js: 返回 top 、 left 、 width 、 height
jQuery: 返回 width 、 height
3-3.隱藏元素
Zepto.js: 無法獲取寬高;
jQuery: 可以獲取。
4.Zepto 的each 方法只能遍歷 數組,不能遍歷JSON對象
5.Zepto 的animate 方法參數說明 :詳情點擊-
zepto中animate的用法
6.zepto的jsonp callback函數名無法自定義
7.DOM 操作區(qū)別
jq代碼:
(function($) {
$(function() {
var $list = $('ullijQuery 插入/li/ul', {
id: 'insert-by-jquery'
});
$list.appendTo($('body'));
});
})(window.jQuery);
jQuery 操作 ul 上的 id 不會被添加。
zepto代碼:
Zepto(function($) {
var $list = $('ulliZepto 插入/li/ul', {
id: 'insert-by-zepto'
});
$list.appendTo($('body'));
});
Zepto 可以在 ul 上添加 id 。
8.事件觸發(fā)區(qū)別
jq代碼:
(function($) {
$(function() {
$script = $('script /', {
src: 'htt p:/ /cdn.amaze ui.o rg/amazeui/1.0.1/js/amazeui.min.js',
id: 'ui-jquery'
});
$script.appendTo($('body'));
$script.on('load', function() {
console.log('jQ script loaded');
});
});
})(window.jQuery);
使用 jQuery 時 load 事件的處理函數 不會 執(zhí)行
zepto代碼:
Zepto(function($) {
$script = $('script /', {
src: 'htt p:/ /cdn.amaz eui.o rg/amazeui/1.0.1/js/amazeui.js',
id: 'ui-zepto'
});
$script.appendTo($('body'));
$script.on('load', function() {
console.log('zepto script loaded');
});
});
使用 Zepto 時 load 事件的處理函數 會 執(zhí)行。
新聞標題:jqueryzepto的簡單介紹
瀏覽路徑:http://chinadenli.net/article10/dsdiddo.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、軟件開發(fā)、App設計、ChatGPT、營銷型網站建設、動態(tài)網站
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)