如果判斷網(wǎng)站是用的哪個(gè)js框架,很簡(jiǎn)單,打開(kāi)這個(gè)網(wǎng)站后,在瀏覽器中按鍵盤的F12鍵,會(huì)出現(xiàn)開(kāi)發(fā)人員工具,拿谷歌瀏覽器來(lái)說(shuō):

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