JQuery需要帮助理解(i,el)
JQuery-Need help understanding (i, el)
我很难理解这段代码。
var win = $(window);
var allMods = $(".module");
// Already visible modules
allMods.each(function(i, el) {
var el = $(el);
if (el.visible(true)) {
el.addClass("already-visible");
}
});
win.scroll(function(event) {
allMods.each(function(i, el) {
var el = $(el);
if (el.visible(true)) {
el.addClass("come-in");
}
});
});
我知道代码的下半部分在窗口滚动时运行,并且allMods.each块都是循环,用"module"类迭代所有元素。
有三件事我不明白:
- .each函数不应该将数组或对象和回调函数作为参数吗?这里只需要一个函数
- 为什么将"i"answers"el"作为参数传递给函数。我猜"el"指的是正在迭代的当前元素,但他们为什么称它为"el"。你能把所有的"el"都换成其他名字吗?我不知道"I"是什么
- 上半部分的方块什么时候跑?它不在win.scroll事件中
.each函数不应该将数组或对象和回调函数作为参数吗?这里只需要一个函数。
没有。您正在将其作为jQuery对象上的方法进行调用。它就是在那个物体上循环的。在内部each
使用this
来确定。
为什么将"i"answers"el"作为参数传递给函数。我猜"el"指的是正在迭代的当前元素,但他们为什么称它为"el"。你能把所有的"el"都换成其他名字吗?我不知道"I"是什么。
您可以为函数参数使用任何您喜欢的名称,这对调用时传递给它的值没有影响。确定这是调用函数(即each
的内部)的责任。传递给它们的值在each
的文档中进行了描述。
Type: Function( Integer index, Element element )
第一个参数是jQuery对象中的索引。第二个参数是作为该索引值的元素。
上半部分的方块什么时候跑?它不在win.scroll事件中。
同时,任何不在函数内部的其他代码都将运行。当脚本加载到文档中时。
- 没有。
$().each()
在jQuery对象(元素集合)上运行,并且只将函数作为参数 - 请参阅上面链接的文档。
i
是索引(基于0),el
是元素本身。是的,只要更改函数内部的引用,就可以自由更改名称 - 它在启动时运行,无论何时执行该代码块
相关文章:
- 需要帮助设置json数组
- JQuery需要帮助理解(i,el)
- 如何在输入字段中的按钮的帮助下打开日历,该字段的类型为“=”;日期”;
- 需要帮助谷歌地图方向面板在FancyBox中显示
- 我需要为我的朋友在这个项目上提供帮助
- 使用密码对话框Javascript请求帮助
- JavaScript计算帮助(乘以时间)
- 另一个if(!$scope.$$phase)$scope$apply()szenario-需要帮助才能通关
- Angular ng类需要帮助设置
- {{#each}}内部的Handlebar帮助程序
- php帮助-需要使用字符串回显php
- JavaScript,JQuery.需要帮助才能获得'name'从我的JSON中删除
- jQuery基于下拉选择更新帮助文本
- 需要比特币校验地址和json帮助
- 在JavaScript中处理数组和对象时需要帮助
- JavaScript表单提交帮助
- 需要有关修剪JavaScript的帮助
- 需要帮助自定义幻灯片自动播放
- 需要帮助编写在不使用toString的情况下将十进制转换为二进制的代码
- 需要帮助在javascript中使用EL从模型中获取值