求大神帮忙解决一下php中javascript的问题

fighter007 发布于 2015/05/16 11:56
阅读 122
收藏 0
PHP
<style>
.test1{
background: green;
}
.test2{
background: red;
}
</style>
<script>
function t(){
var div=document.getElementsByClassName('test1')[0];
if (div.className.indexOf('test1')>=0) {
div.className='test2';
}else{
div.className='test1';
}
}
</script>
</head>
    <body>
    <div class="test1" onclick="t();" >
    没点一下div颜色就红绿交替
    </div>

    </body>


以上代码中function函数好像有问题,点一下能成功,两下就不行了,这是什么原因?

加载中
0
SaltyEgg
SaltyEgg

因为第二次这个就找不到 var div=document.getElementsByClassName('test1')[0];了。

<style>
.test1{
background: green;
}
.test2{
background: red;
}
</style>
<script>
function t(){
var div=document.getElementById('color-div');
if (div.className.indexOf('test1')>=0) {
div.className='test2';
}else{
div.className='test1';
}
}
</script>
</head>
    <body>
    <div class="test1" id="color-div" onclick="t();" >
    没点一下div颜色就红绿交替
    </div>
    </body>




0
f
fighter007
可是为什么找不到var?我没想明白?
0
Jceee
Jceee
 因为点了一次后div的class变成 test2,  再找class名字是test1的div当然找不到了,可以f12看看点击后那元素的变化
f
fighter007
哦,对的,谢谢了
返回顶部
顶部