js原生態(tài)函數(shù)中使用jQuery中的 $(this)無效的解決方法
更新時(shí)間:2011年05月25日 23:02:11 作者:
今天遇到一個(gè)聽郁悶的問題,正如title所說 js中原生態(tài)函數(shù)在jQuery 中使用 $(this) 被解析成undefined
我今天的例子是這樣的,
$("ul li").hover(function(){
setTimeout(function(){
$(this).addClass("test");
alert("延遲了0.3s 我出現(xiàn)了!") //測試
},300)
})
在運(yùn)行時(shí),這個(gè)黃色部分是不執(zhí)行的 ,然后我彈出了一下$(this)原來是undefined (其實(shí)已經(jīng)猜到了);
然后我就沒想(習(xí)慣),直接到百度找了,然后沒找到答案,然后我就自己想,是不是換種方法,但是我覺得又不大合理,隨后我就想到了 在里面讀不到,外面可以讀得到, 然后我就將$(this) 在setTimeout()外面賦給了一個(gè)變量。這樣就迎刃而解了。哈哈,挺無語的問題吧,其實(shí)我在這里不是想說如何解決的,我是說這種思路,解決問題前先不要一味的去百度 谷歌
先要自己想想辦法,真想不到,去找答案。
$("ul li").hover(function(){
var oLi = $(this);
setTimeout(function(){
oLi.addClass("test");
alert("延遲了0.3s 我出現(xiàn)了!") //測試
},300)
})
復(fù)制代碼 代碼如下:
$("ul li").hover(function(){
setTimeout(function(){
$(this).addClass("test");
alert("延遲了0.3s 我出現(xiàn)了!") //測試
},300)
})
在運(yùn)行時(shí),這個(gè)黃色部分是不執(zhí)行的 ,然后我彈出了一下$(this)原來是undefined (其實(shí)已經(jīng)猜到了);
然后我就沒想(習(xí)慣),直接到百度找了,然后沒找到答案,然后我就自己想,是不是換種方法,但是我覺得又不大合理,隨后我就想到了 在里面讀不到,外面可以讀得到, 然后我就將$(this) 在setTimeout()外面賦給了一個(gè)變量。這樣就迎刃而解了。哈哈,挺無語的問題吧,其實(shí)我在這里不是想說如何解決的,我是說這種思路,解決問題前先不要一味的去百度 谷歌
先要自己想想辦法,真想不到,去找答案。
復(fù)制代碼 代碼如下:
$("ul li").hover(function(){
var oLi = $(this);
setTimeout(function(){
oLi.addClass("test");
alert("延遲了0.3s 我出現(xiàn)了!") //測試
},300)
})
您可能感興趣的文章:
- js中的this關(guān)鍵字詳解
- javascript中onclick(this)用法介紹
- javascript this用法小結(jié)
- JS中的this變量的使用介紹
- javascript中this的四種用法
- js報(bào)錯(cuò) Object doesn''t support this property or method的原因分析
- 改變javascript函數(shù)內(nèi)部this指針指向的三種方法
- 關(guān)于js里的this關(guān)鍵字的理解
- tomcat6下jsp出現(xiàn)getOutputStream() has already been called for this response異常的原因和解決方法
- Javascript this關(guān)鍵字使用分析
- JS中改變this指向的方法(call和apply、bind)
- JavaScript中this詳解
- JS函數(shù)this的用法實(shí)例分析
- 解決vue.js this.$router.push無效的問題
- vue項(xiàng)目中在外部js文件中直接調(diào)用vue實(shí)例的方法比如說this
- Javascript對(duì)象中關(guān)于setTimeout和setInterval的this介紹
- Javascript this指針
- JS中this的4種綁定規(guī)則詳解
相關(guān)文章
jQuery EasyUI實(shí)現(xiàn)右鍵菜單變灰不可用效果
用jQuery實(shí)現(xiàn)了三種情況下的變灰不可用的效果,當(dāng)鼠標(biāo)放到上面點(diǎn)擊,右鍵菜單就會(huì)消失,其實(shí)解決的辦法也很簡單,只要在對(duì)應(yīng)的單擊事件里重新綁定右鍵菜單即可,需要的朋友可以參考下2015-09-09
jQuery判斷當(dāng)前點(diǎn)擊的是第幾個(gè)li的代碼
jQuery中如何判斷當(dāng)前點(diǎn)擊的是第幾個(gè)li,使用$(this).index()取得li的下標(biāo),下面的示例,大家可以看看2014-09-09
使用jquery判斷一個(gè)元素是否含有一個(gè)指定的類(class)實(shí)例
下面小編就為大家?guī)硪黄褂胘query判斷一個(gè)元素是否含有一個(gè)指定的類(class)實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-02-02
Jquery ajax請(qǐng)求導(dǎo)出Excel表格的實(shí)現(xiàn)代碼
下面小編就為大家?guī)硪黄狫query ajax請(qǐng)求導(dǎo)出Excel表格的實(shí)現(xiàn)代碼。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-06-06
jQuery+PHP+Mysql實(shí)現(xiàn)抽獎(jiǎng)程序
這篇文章主要為大家詳細(xì)介紹了jQuery+PHP+Mysql實(shí)現(xiàn)抽獎(jiǎng)程序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05
使用jquery給input和textarea設(shè)定ie中的focus
在瀏覽網(wǎng)站的過程中,我們經(jīng)??梢钥匆姰?dāng)鼠標(biāo)點(diǎn)擊后樣式改變的文本框和文本域,那么這種效果是如何實(shí)現(xiàn)的呢?2008-05-05
jQuery根據(jù)用戶電腦是mac還是pc加載對(duì)應(yīng)樣式的方法
這篇文章主要介紹了jQuery根據(jù)用戶電腦是mac還是pc加載對(duì)應(yīng)樣式的方法,涉及jQuery針對(duì)客戶端信息的獲取及樣式的調(diào)用技巧,需要的朋友可以參考下2015-06-06

