jQuery根本不工作?

时间:2012-07-06 08:10:03

标签: javascript jquery html class

我有一个包含以下div的网页:

<div class='book_box'>
    <table border=0 cellspacing=0>
        <tr>
            <td align='center'><img src='img/theseven.jpg' /></td>
        </tr>
        <tr>
            <td align='center'>The Seven by Derek Edgington</td>
        </tr>
    </table>
</div>

我的标题中有这个Javascript代码:

$('.book_box').hover(
    function() {
        $(this).css('background', '#ffffff');
    },
    function() {
        $(this).css('background', '#a8ff9a');
    }
);

......它根本不起作用。我已经测试并确保正确加载jQuery并使用它执行了一些其他操作。这段代码似乎不起作用?

4 个答案:

答案 0 :(得分:4)

代码没有任何变化,这里为我工作的IT是JSFiddle的演示

DEMO

建议:只使用$(document).ready

$(document).ready(function() {
  $('.book_box').hover( function() {
      alert('abc');
      $(this).css('background', '#ffffff'); 
    },
    function() { 
      alert('abc1');
      $(this).css('background', '#a8ff9a'); 
    } 
  );  
});

答案 1 :(得分:2)

您需要将代码放在dom ready回调函数中。或者您的代码将在.book_box div准备好之前执行。

$(function() {
  // put your code here.

});

这是

的捷径
$(document).ready(function() {
  // put your code here.

});

答案 2 :(得分:0)

尝试:

 $('.book_box').hover(
function() {
    $(this).css(backgroundColor, '#ffffff');
},
function() {
    $(this).css(backgroundColor, '#a8ff9a');
}

);

答案 3 :(得分:0)

在Linux上的Firefox和Opera上它可以正常工作,但也许你可以试试这个:

$(function() {
            $('.book_box table').hover(
            function() {
                $(this).css('background', '#ffffff');
            },
            function() {
                $(this).css('background', '#a8ff9a');
            }
        );
});

您是否看过(Firefox)错误控制台?