$("#hover"+item)不起作用,但是$("#hover0")的工作原理
$( "#hover"+item ) does not work but $( "#hover0" ) works
我有一个javascript代码如下:
$( "#hover0" )
.mouseenter(function() {
$( "#hover0" ).attr("style","background-color:#e1e8ed;");
})
.mouseleave(function() {
$( "#hover0" ).removeAttr();
});
它工作得很好,但一旦我把它改成下面的,它就不起作用了:
var item=0;
$( "#hover"+item )
.mouseenter(function() {
$( "#hover"+item ).attr("style","background-color:#e1e8ed;");
})
.mouseleave(function() {
$( "#hover"+item ).removeAttr();
});
有什么问题吗?有人能告诉我怎么做像第二种方法吗?(实际上,真实的场景是一个for循环,每次循环通过时项目都会发生变化)
更新:这是我的循环:
for (var item in jsresult) {
if (jsresult[item] != "null") {
$('#tweetWrapper')
.append("<div class='tweetCon' id='hover"+item+"' >" +
"<div class='tweetimgcon' ><img alt='' height='50px' src='"+jsresult[item].url+"'></div>" +
"<div class='tweetcontitle' >"+jsresult[item].name+"</div>" +
"<div class='tweetcondate' >"+jsresult[item].date+"</div>" +
"<div class='tweetconcontent' '>"+jsresult[item].text+"</div>" +
"</div><div class='ttest' style='float:left;height:300px;width:100%;display:none;'></div>");
$("#hover0")
.mouseenter(function() {
$( "#hover0" ).attr("style","background-color:#e1e8ed;");
})
.mouseleave(function() {
$( "#hover0" ).removeAttr();
});
}
}
这些处理程序将始终使用item
的最后已知值,而不是设置它们时的值。
最好将处理程序代码移到setup函数中,然后调用它——它的局部变量将始终具有正确的值。
function addHandlers(item) {
$( "#hover"+item )
.mouseenter(function() {
$( "#hover"+item ).attr("style","background-color:#e1e8ed;");
})
.mouseleave(function() {
$( "#hover"+item ).removeAttr('style');
});
}
// called as...
//
for(var item in jsresult)
{
if (jsresult[item]!="null")
{
// wrappers, etc., then...
//
addHandlers( item );
}
}
相关文章:
- Scriptaculous dom:仅加载工作"有时“;
- 我对“;返回true"嵌套函数内部;t工作
- Jquery scrollTop动画不工作"无法读取属性'top'无风
- "此网站似乎使用滚动链接定位效果.这可能不能很好地与异步平移一起工作;
- 无法使Nativescript插件工作"nativescript admob”;
- "npm运行构建:css"不能工作,而当我自己运行脚本时是可以的
- Django,HTML,JS:<img src=“#">可以在HTML中工作,但不能在JS文件中工作
- jQuery css"点击“;不会'更改日历中选定的月份后无法工作
- 无法调用方法“”;getEditResponseUrl"当使用表单ID打开表单时,绑定到工作表的Google
- "键“;jQuery中的对象无法正常工作
- 得到"标签“;标签在Internet Explorer 6中工作(用于单选按钮)
- 如何获得Facebook Like Box"黑暗方案”;正确工作?(背景是透明的.)
- 工作方法:document.getElementById(“ElementName”).style="显示:阻
- "点击“;不会'我不能在手机上工作
- 如何“;(M[key]||(M[key]=[])).push(elem)"工作
- "添加到购物车”;按钮不'由于ReferenceError,无法工作
- 如何"递归AJAX回调”;在JavaScript工作中
- 其中的行“xmlns:ng="http://angularjs.org"`工作/需要
- 如何使工作jquery"“滑动”;在iPad上滚动
- 像在PHP中一样,在jQuery中执行单引号(')和双引号(quot;)的工作