jquery 每个选择器都不起作用
我创建了一个计数器,每个计数器计算不同的数字,但是当我选择类中的所有元素时,它不起作用...
$(document).ready(function() {
function change() {
/*
$(".test").each(function(i,domeElement){
var theNum = parseInt(this.html())+1;
this.html(theNum);
});
*/
//this works... the other one doesnt why?!?!
var theNum = parseInt($(".test").html()) + 1;
$(".test").html(theNum);
}
setInterval(change, 1000);
});
I created a counter that count different numbers each, but when I choose all the elemnts in class it doesnt work...
$(document).ready(function() {
function change() {
/*
$(".test").each(function(i,domeElement){
var theNum = parseInt(this.html())+1;
this.html(theNum);
});
*/
//this works... the other one doesnt why?!?!
var theNum = parseInt($(".test").html()) + 1;
$(".test").html(theNum);
}
setInterval(change, 1000);
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
你应该使用
而不是
因为
html()
是一个 jQuery 函数,而this
(在.each()
内部)是一个 domElement,所以你必须将其包装到 jQuery 对象Fiddle 中: http://jsfiddle.net/nicolapeluchetti/DTyY7/2/
You should use
and not
Because
html()
is a jQuery function andthis
(inside.each()
) is a domElement and so you must wrap it into a jQuery objectFiddle here: http://jsfiddle.net/nicolapeluchetti/DTyY7/2/
each()
回调正文中的this
应更改为$(this)
:请参阅 这个演示。
this
in youreach()
callback body should be changed to$(this)
:see this demo.
它将
.test
的第一个实例应用于所有这些实例。您需要循环遍历所有元素并单独应用+1
。it is applying the first instance of
.test
to all of them. You need to loop through all of the elements and apply a+1
separately.你需要使用 $(this) 代替 this 。我已经更新了代码 http://jsfiddle.net/DTyY7/ 6/.希望有帮助
you need to use $(this) instead this .I have updated the code http://jsfiddle.net/DTyY7/6/ .Hope it helps
});
这就是修复它的方法。因为你在另一个范围内,所以这个关键字不起作用。
});
This is how you can fix it. Because you are in another scope the keword this doesn't work.