1

我正在使用此代码来显示事件。每个事件都是可点击的,但我真的需要一个背景色悬停效果。也许没有 JavaScript 也有可能?

<table class="tableLine">
<tr>
<th>Wann?</th>
<th>Was?</th>
<th>Wer?</th>
<th>Wo?</th>
</tr>

<?php
$all_events = array();
$ten_events = array();

for($i = 0; $events = mysql_fetch_object($events_resource); $i++){

if($i < 9){

    $ten_events[] = $events;

}

$all_events[] = $events;

}  

$i = 0;

foreach($ten_events as $event){ 

$row = $i % 2;

echo "<tr onclick=\"window.location.href = '?page=single_event&amp;id=$event->id'\" style=\"cursor: pointer;\">
        <td class='row_{$row}'>{$event->de_date}</td></a>
        <td class='row_{$row}'>{$event->category}</td>
        <td class='row_{$row}'>{$event->who}</td>
        <td class='row_{$row}'>{$event->location}</td>
      </tr>";

$i++;

} 
?>

CSS

这是我的行的 CSS 代码。

.tableLine {
font-family: Verdana,Arial,sans-serif;
font-weight: normal;
font-size: 10px;
width: 614px;
border: 0;
padding: 0;
border-spacing: 0;
text-align: left;
}

.tableLine th {
background-color: #990000;
color: #f3f2ea;
font-weight: bold;
}

.row_0 {
background-color: #424140;
padding: 3px 5px 3px 5px;
color: #f3f2ea;
}

.row_1 {
background-color: #555352;
padding: 3px 5px 3px 5px;
color: #f3f2ea;
}

.tableLine tr:hover {
background: #990000;
}
4

4 回答 4

3

使用 CSS:

 tr:hover { background: #CCC; } 
于 2012-09-04T00:42:36.433 回答
2

尝试这个:

  1. 删除class='row_{$row}'fromtd并将其放入tr标签
  2. 然后替换你的css的这一部分:

/**/

.row_0 {
background-color: #424140;
padding: 3px 5px 3px 5px;
color: #f3f2ea;
}

.row_1 {
background-color: #555352;
padding: 3px 5px 3px 5px;
color: #f3f2ea;
}

有了这个:

.row_0 {
   background-color: #424140;
}

.row_1 {
   background-color: #555352;
}

.row_0:hover, .row_1:hover {
   background-color: #EEE; /* highlight row */
}

.tableLine tr td {
   padding: 3px 5px 3px 5px;
   color: #f3f2ea;
}
于 2012-09-04T01:29:01.750 回答
0

尝试使用CSS

table tr:hover{background:#eee;}​
于 2012-09-04T00:42:58.163 回答
0

如果您还想突出显示每一列,您可以为每一列 td 赋予一个独特的类并使用如下内容。(jQuery)

$("td").hover(
    // Mouse Over Function
    function () {
        $('.'+$(this).attr('class')).each(function() {
            $(this).css("background","#FAFAFA");
        });
        $(this).parent().children("td").each(function() {$(this).css("background","#FAFAFA")});
        $(this).css("background","#FAEEFA");
    },
    // Mouse Out Function
    function () {
        $('.'+$(this).attr('class')).each(function() {
            $('.'+$(this).attr('class')).css("background","#FFFFFF");
        });
        $(this).parent().children("td").each(function() {$(this).css("background","#FFFFFF")});
    });
于 2012-09-04T00:49:50.443 回答