$('#someDiv').hover
(function(){
(this).css({'background-color': 'black'});
},
function(){
(this).css({'background-color': 'red'});
}
);
每次我将鼠标悬停(或移出)时div,Chrome 控制台都会返回标题中的错误。我认为div对象有一个css()方法,我发现这种情况真的很混乱。
代替(this).css({...});
您需要$(this).css({...});使用 jQuery。
如果 jQuery 被重新映射到 以外的东西$,请使用
jQuery(this).css({...});
添加$到(this),即$(this)。
在您的事件处理程序中,this指的是原始 DOM 对象(HTMLDivElement错误状态为 ),而不是 jQuery 对象。使用 $() 包装它将使该css()方法可用,因为现在底层 DOM 对象包含在暴露其他功能的 jQuery 包装器中。
演示:http: //jsfiddle.net/S7zd8/1/