我在确定要使用哪个选择器访问CSS属性时遇到了麻烦。这是我的代码:

我的jQuery:

<script type="text/javascript">
    $(document).ready(function () {
        $('#columnDay1').css('cursor', 'pointer');
        $('#columnDay1').mouseover(function () {
            $('td.calendarHeader').css("background-color", "#a43802");
        });
        $('#columnDay1').mouseout(function () {
            $('td.calendarHeader').css("background-color", "#37322e");
        });
    });
</script>


我的html:

<div class="contentColumnDay1">
<table cellpadding="0" cellspacing="0" id="columnDay1">
    <tr>
        <td class="calendarHeader">
            <p><span class="dayHeader">Day 1</span><br />August 15, 2011</p>
        </td>
    </tr>
    <asp:Label runat="server" id="labelDay1"></asp:Label>
</table>


我正在尝试访问.calendarHeader CSS属性background-color。我尝试了#columnDay1.calendarHeader,它不起作用。我把头撞在桌子上。

有什么帮助吗?

最佳答案

代替

$('#columnDay1').mouseover(function () {
    $('td.calendarHeader').css("background-color", "#a43802");
});


尝试

$('#columnDay1').mouseover(function () {
    $('td.calendarHeader', this).css("background-color", "#a43802");
});


td.calendarHeader将引用类“ calendarHeader”的每个td。您需要给它一个this$(this)的上下文,以指定您只想在鼠标悬停的元素内找到td.calendarHeader。或者,您可以执行$(this).find('td.calendarHeader').css

10-07 15:59