有几个盒子(超过100个)将动态创建
<div id="window5"></div>
<div id="window18"></div>
<div id="window190"></div>
现在,如果我点击一个框,颜色应该是红色,然后如果我点击另一个框,颜色应该更改为红色(第一个框颜色应该正常)。我使用了一些这样的代码,但是它没有参加css课程。
我怎样才能得到这种情况的动物身份。
css文件:
.selected { 红色; }
使用javasscript代码作为;
<script type="text/javascript">
$(document).ready(function () {
$("div[id *= 'window']").click(function (e) {
$(".selected").removeClass("selected");
$(this).addClass("selected");
e.stopPropagation();
});
$(document).click(function () {
$(".selected").removeClass("selected");
});
});
</script>
答案 0 :(得分:1)
那是因为它们是生成的。
您必须使用.on
声明。
$("div[id *= 'window']").on('click', function (e) {
如果您使用的是早于1.7的jQuery版本,请改为使用.live()
:
$("div[id *= 'window']").live('click', function (e) {
答案 1 :(得分:0)
你必须使用jquery的.live或.on,因为你会动态生成div。
要更改div的背景颜色,您必须在css中使用'background-color'而不是'color'。