当前位置:  编程技术>jquery

Jquery中setInterval、setTimeout使用要注意的问题

    来源: 互联网  发布时间:2014-09-03

    本文导语:  1、用jquery写定时器时,总是会出现fn不存在的错误提示,这是为什么呢? 写定时器时习惯直接:   代码示例: setInterval("fn()",2000);   最近总是提示有问题,如下:   代码示例: $(function(){setInterval("fn()",2000);})   解决方法: ...

1、用jquery写定时器时,总是会出现fn不存在的错误提示,这是为什么呢?
写定时器时习惯直接:
 

代码示例:
setInterval("fn()",2000);
 

最近总是提示有问题,如下:
 

代码示例:
$(function(){setInterval("fn()",2000);})
 

解决方法:
去掉引号和括号,采用最原始的方法:
 

代码示例:
$(function(){setInterval(fn,2000);})

另外的方法,就是要书写jq的扩展,如下:
 

代码示例:
$(function(){
$.extend({
fn:function(){
alert("im fn!");
}
});
setInterval("$.fn()",2000);
});

2、如果需要传递参数,又该如何呢?

像上面第一种写法,
 

代码示例:
$(function(){setInterval(fn,2000);})
 

如果写成
 

代码示例:
$(function(){setInterval(fn(para),2000);})
 

就报错了。

可以内置一个function,写成:
 

代码示例:
$(function(){setInterval(function(){fn(para)},2000);})
 

这样也是可以的。

补充下第二种传参的方法。

先看段代码:
 

代码示例:
$(function(){
$start = 1;
$.extend({
a:function(t){
$index = t;
alert($index);
$start++;
}
});
setInterval("$.a("+$start+")",2000);
});
 

结果就是alert出来的,一直是1,不会增加。
注意setInterval里面的第一个参数,这是一个语句,用双引号括了起来,里面的东西会被解释成变量。
如果按照上面的写法,相当于:
 

代码示例:
setInterval("$.a(1)",2000);
 

那么结果也就无可厚非了。
正确的写法:
 

代码示例:
$(function(){
$start = 1;
$.extend({
a:function(t){
$index = t;
alert($index);
$start++;
}
});
setInterval("$.a($start)",2000);
});

这时$start才会被解释成变量。
语句相当于function(){a(变量)},而不是function(){a(值)}。

说了这么多,你都看明白了吗?不明白的话,重头再看一遍吧,加深下理解。


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • jquery遍历checkbox的注意事项说明
  • jquery的live使用注意事项
  • 解析:为jquery的ajax传递url的方法与注意事项
  • jquery easyui layout注意事项
  • jquery使用append(content)方法注意事项分享
  • Jquery easyui中Form表单提交注意事项
  • jQuery Migrate 1.1.0 Released 注意事项
  • 在jquery boxy中添加百度地图坐标拾取注意流程
  • jQuery中get和post方法传值测试及注意事项
  • jquery中load方法的用法及注意事项说明
  • 通过javascript库JQuery实现页面跳转功能代码
  • jQuery鼠标动画插件 jquery-ahover
  • jQuery概述,代码举例及最新版下载
  • jQuery向导插件 Jquery Wizard Plugin
  • Jquery操作html复选框checkbox:全选,全不选和反选
  • jQuery圆角插件 jQuery Corners
  • struts+spring+hibernate+jquery实现分页功能的几个基本类介绍(异步加载)
  • jQuery相册插件 jQuery.popeye
  • jQuery UI组件 jQuery UI
  • jQuery右键菜单插件 jQuery ContextMenu
  • jQuery分页插件 Pagination jQuery Plugin
  • jQuery日历插件 jQuery Week Calendar
  • jQuery的中文日历插件 jQuery.datePickerCn
  • jQuery实现CSS3动画效果的插件 jQuery Transit
  • jQuery的CSV插件 jQuery CSV
  • jQuery的气泡提示插件 jquery.ns_bub.js
  • jQuery气泡提示插件 jquery-rollover-tooltip
  • jQuery对话框 jQuery Modal Dialog
  • jQuery 插件 jQuery Ripples
  • 精简版的jQuery jQuery.ish
  • jQuery的OpenSocial插件 OpenSocial jQuery


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3