Jquery中文网 www.jquerycn.cn
Jquery中文网 >  jQuery  >  jquery 教程  >  正文 js原生态函数中使用jQuery中的 $(this)无效的解决方法

js原生态函数中使用jQuery中的 $(this)无效的解决方法

发布时间:2013-07-02   编辑:www.jquerycn.cn
今天遇到一个听郁闷的问题,正如title所说 js中原生态函数在jQuery 中使用 $(this) 被解析成undefined
今天遇到一个听郁闷的问题,正如title所说 js中原生态函数在jquery 中使用 $(this) 被解析成undefined 我今天的例子是这样的,
复制代码 代码如下:

$("ul li").hover(function(){
  setTimeout(function(){
    $(this).addClass("test");
    alert("延迟了0.3s 我出现了!") //测试
  },300)
})

在运行时,这个黄色部分是不执行的 ,然后我弹出了一下$(this)原来是undefined (其实已经猜到了);
然后我就没想(习惯),直接到百度找了,然后没找到答案,然后我就自己想,是不是换种方法,但是我觉得又不大合理,随后我就想到了 在里面读不到,外面可以读得到, 然后我就将$(this) 在setTimeout()外面赋给了一个变量。这样就迎刃而解了。哈哈,挺无语的问题吧,其实我在这里不是想说如何解决的,我是说这种思路,解决问题前先不要一味的去百度 谷歌
先要自己想想办法,真想不到,去找答案。
复制代码 代码如下:

$("ul li").hover(function(){
  var oLi = $(this);
  setTimeout(function(){
    oLi.addClass("test");
    alert("延迟了0.3s 我出现了!") //测试
  },300)
})

您可能感兴趣的文章:
js原生态函数中使用jQuery中的 $(this)无效的解决方法
jQuery Boilerplate——流行的jQuery插件开发模板
jQuery构造函数插件开发模式
[javascript 学习笔记] 1. 面向对象
jQuery UI Dialog控件中的表单无法正常提交的解决方法
Javascript技巧之不要用for in语句对数组进行遍历
jQuery的运行机制和设计理念分析
Jquery 常用方法经典总结
jQuery技巧大放送 学习jquery的朋友可以看下
jQuery 常见开发使用技巧总结

[关闭]