2012-07-18 69 views
4

在jquery中,如何向一个元素添加一个'onmouseover'事件。jquery添加onmouseover属性

<tr id=row bgcolor=white> 

成为

<tr id=row bgcolor=white onMouseOver="this.bgColor='red'"> 
+0

为什么你要添加的内嵌属性?您可以使用jQuery的'.mouseover()'事件 – 2012-07-18 00:49:30

+0

我有几行,row_1,row_2等 – user1022585 2012-07-18 00:56:58

回答

11

你可以使用attr方法:

$('#row').attr("onMouseOver", "this.bgColor='red'") 

但因为你是使用jQuery我会建议使用on方法:

$('#row').on('mouseover', function() { 
    $(this).css('background-color', 'red'); 
}); 
+3

+1首先回答问题,然后指出理想的方式来做到这一点。 – 2012-07-18 00:51:12

0

请勿添加该属性。使用该事件。

$('#row').mouseover(function() { 
    $(this).css('background','red'); 
}); 
1

试试这个,如果该元素是静态的:

var $row = $('#row'); 
$row.mouseover(function(){ 
    $row.css('background-color','red'); 
}); 

使用这个元素是否动态地放置在页面:

var $row = $('#row'); 
$row.on('mouseover',function(){ 
    $row.css('background-color','red'); 
}); 
+0

这两种变化完全一样。如果您想要一个委托事件处理程序来满足动态添加的元素,您需要使用.on()的不同语法 - 请参阅doco。 – nnnnnn 2012-07-18 01:05:44