小編給大家分享一下jQuery中this和$(this)有哪些區(qū)別,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
成都創(chuàng)新互聯(lián)公司長期為近1000家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為岑鞏企業(yè)提供專業(yè)的成都網(wǎng)站建設(shè)、成都網(wǎng)站制作,岑鞏網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
區(qū)別:this表示當(dāng)前的上下文對象是一個html DOM對象,可以調(diào)用html對象所擁有的屬性和方法;而“$(this)”代表的上下文對象是一個jquery的上下文對象,可以調(diào)用jquery的方法和屬性值。
jquery中this與$(this)的用法區(qū)別.先看以下代碼:
$("#textbox").hover( function() { this.title = "Test"; }, fucntion() { this.title = "OK”; } );
這里的this其實是一個Html 元素(textbox),textbox有text屬性,所以這樣寫是完全沒有什么問題的。 但是如果將this換成$(this)就不是那回事了,就會報錯了。 以下寫法是錯誤的:
$("#textbox").hover( function() { $(this).title = "Test"; }, function() { $(this).title = "OK"; } );
這里的$(this)是一個JQuery對象,而jQuery對象沒有title 屬性,因此這樣寫是錯誤的。 JQuery擁有attr()方法可以get/set DOM對象的屬性,所以正確的寫法應(yīng)該是這樣:
$("#textbox").hover( function() { $(this).attr('title', 'Test'); }, function() { $(this).attr('title', 'OK'); } );
使用JQuery的好處是它包裝了各種瀏覽器版本對DOM對象的操作,因此統(tǒng)一使用$(this)而不再用this應(yīng)該是比較不錯的選擇。
$()
生成的是什么呢?實際上$()=jquery()
,那么也就是說返回的是一個jquery
的對象。
$(this)
是jquery
對象,能調(diào)用jquery
的方法,例如click()
, keyup()
。
$(function () { $('button').click(function () { alert(this);//this 表示原生的DOM //$(this)表示當(dāng)前對象,這里指的是button }) });
結(jié)論:this
,表示當(dāng)前的上下文對象是一個html DOM
對象,可以調(diào)用html
對象所擁有的屬性,方法。$(this)
,代表的上下文對象是一個jquery
的上下文對象,可以調(diào)用jquery
的方法和屬性值。
看完了這篇文章,相信你對jQuery中this和$(this)有哪些區(qū)別有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
網(wǎng)頁標(biāo)題:jQuery中this和$(this)有哪些區(qū)別
標(biāo)題網(wǎng)址:http://aaarwkj.com/article10/ihhedo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、網(wǎng)站建設(shè)、定制開發(fā)、ChatGPT、商城網(wǎng)站、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)