【发布时间】:2013-09-08 11:42:56
【问题描述】:
我在制作地图时遇到问题。我用桌子意识到了这一点,但是悬停太慢了。那么,您可以建议我使用哪些工具来解决我的问题?我应该使用画布吗?还有什么方法更好——在客户端使用 json 生成地图还是在服务器上生成地图?
完整示例:http://jsfiddle.net/MSpbW/3/(自动生成表格)。
html:
<tbody>
<tr>
<td class="cell cell-hotel-border"></td>
<td class="cell cell-hotel-border"></td>
<td class="cell cell-hotel-border"></td>
<td class="cell cell-hotel-border"></td>
<td class="cell cell-hotel-border"></td>
</tr>
<tr>
<td class="cell cell-hotel-border"></td>
<td class="cell cell-hotel-empty" style=""></td>
<td class="cell cell-hotel-empty" style=""></td>
<td class="cell cell-hotel-empty" style=""></td>
<td class="cell cell-hotel-border"></td>
</tr>
<tr>
<td class="cell cell-hotel-border"></td>
<td class="cell cell-hotel-empty" style=""></td>
<td class="cell cell-hotel-empty" style=""></td>
<td class="cell cell-hotel-empty" style=""></td>
<td class="cell cell-hotel-border"></td>
</tr>
<tr>
<td class="cell cell-hotel-border"></td>
<td class="cell cell-hotel-empty" style=""></td>
<td class="cell cell-hotel-empty" style=""></td>
<td class="cell cell-hotel-empty" style=""></td>
<td class="cell cell-hotel-border"></td>
</tr>
<tr>
<td class="cell cell-hotel-border"></td>
<td class="cell cell-hotel-border"></td>
<td class="cell cell-hotel-border"></td>
<td class="cell cell-hotel-border"></td>
<td class="cell cell-hotel-border"></td>
</tr>
</tbody>
js:
$(document).ready(
function() {
var color;
$(".cell-hotel-empty").hover( function () {
color = $(this).css('background');
$(".cell-hotel-empty").css('background', '0');
}, function() {
$(".cell-hotel-empty").css('background', color);
}
)
}
)
【问题讨论】:
-
如果只在悬停函数中设置样式,请不要使用悬停绑定函数,而是使用纯
css :pseudostyle即.cell-hotel-empty:hover语法。它引入的开销要少得多。您也可以使用<divs>代替表格,因为表格的“预测性渲染”导致很长的列表,这在渲染中或渲染后发生更改时成本很高。
标签: javascript html