jQuery的function函数中使用外部变量需要使用闭包
web jQuery 2022-06-10 949 0
关于本站

“最难不过坚持”

本人承接扒站仿站,php网站维护,病毒查杀,网站编辑,网站改版,html制作

有需要网站维护,改版,病毒查杀,网站编辑,网站备案,html制作等相关的工作可以联系我。
本人有多年相关工作经验,也可提供免费咨询,交个朋友。
有需要探讨问题的朋友,也可以加我微信,共同探讨!
微信:15011482830 QQ:408917339

6281297 2594 39
最新评论
https://jueru.net/
评 留言
:weixiao:
评 留言
:shuijiao: :weiqu: :zhenbang: :leng:
评 留言
:yiwen: :yiwen: :yiwen: :yiwen:
评 EasySass: could not generate CSS file. See Output panel for details.
这个业务逻辑多少都有点奇怪了,阅读浏览次数增值在新闻详情页的控制器方法里setInc,这怎么还写进模型事件里了。如果非要用onAfterRead也可以,把新闻文章的内容单独分出来一个news_content表,然后把它和news做关联,然后给news_content表的onAfterRead事件做增值处理,这样点进新闻页内查询到文章内容时才会触发它。
评 TP6模型事件-查询后onAfterRead不好用
文章标签更多
ThinkPHP (254)
Mysql (58)
DedeCms (33)
jQuery (67)
证件照 (1)
setInc (4)
setDec (4)
onclick (5)
打开边栏(ESC) 关闭边栏(ESC)

原标题:JavaScript的jQuery库中function的存在和参数问题,如何取得i的变量

直接上代码:

// 错误
		for(i=0;i<3;i++) {
			$.get("", function(data){
				console.log(i); // 输出的是3 3 3
			});
		}
		// 正确-使用闭包
		for(i=0;i<3;i++) {
			(function(index){
				$.get("", function(data){
					console.log(index); // 输出的是0 1 2
				});
			})(i)
		}
目的:同一页面有好多tab切换,就想用for循环把所有的tab切换都定义出来,结果tab切换不起作用。

代码:

for(var a=1;a<2;a++){
			$(".cat_hd_"+a+" a").mouseover(function() {
					$(this).addClass("active").siblings().removeClass("active");
					console.log(a);
					$(".cat_bd_"+a+" .cat_bd_tab").eq($(this).index()).show().siblings().hide();
			})
		}	
打印变量a,发现a的值是2,不是1,不知道为什么。变量a命名a,b,c,d等都不行。

网上查找,function函数中使用外部变量需要使用闭包。

代码:

for(var a=1;a<2;a++){
			(function(index){
				$(".cat_hd_"+a+" a").mouseover(function() {
						$(this).addClass("active").siblings().removeClass("active");
						console.log(index);
						$(".cat_bd_"+index+" .cat_bd_tab").eq($(this).index()).show().siblings().hide();
				})
			})(a)
		}	

版权声明:本篇文章来源于网络。 来源链接

相关推荐
jQuery出现Uncaught TypeError: $(...).prop is not a function问题
jQuery | 2019-08-23 6263
做全选功能的时候用到 var xz = $(this).prop("checked"); 提示: Uncaught TypeError: $(...).prop is not a function 应该是jquery版本过低造成的,更换高版本成功解决问题, jquery下载地址 http://www...
TypeError: e.indexOf is not a function解决方法
jQuery | 2020-06-23 6233
This error might be caused by jquery event aliases like .load, .unload or .error deprecated since jQuery 1.8. Look for these aliases in your code and replace them with .o...
评论:0条
评论加载中...
发表评论