用js实现将奇数列的li背景色设置为红色,偶数列li背景色设置为绿色

<!DOCTYPE html>

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="utf-8" />
    <title></title>

</head>
<body>
    <ul>
        <li>i+1</li>
        <li>i+2</li>
        <li>i+3</li>
        <li>i+4</li>
        <li>i+5</li>
    </ul>

    <script>

        var lis = document.querySelectorAll("li");
        for (var i = 0; i < 10; i++) {
            if (i % 2 != 0) {
                lis[i].style.backgroundColor = "red";
            } else {
                lis[i].style.backgroundColor = "green";
            }
        }
        var i = 1;
        while (i <= 10) {
            if (i % 2 != 0) {
                lis[i - 1].style.backgroundColor = "red";
            } else {
                lis[i - 1].style.backgroundColor = "green";
            }
            i++;

        }
      
        </script>
</body>
</html>

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,这是一个有趣的问题,下面是代码实现: HTML代码: ```html <ul id="movieList"> <li>电影1</li> <li> <span>电影1的具体内容</span> </li> <li>电影2</li> <li> <span>电影2的具体内容</span> </li> <li>电影3</li> <li> <span>电影3的具体内容</span> </li> <li>电影4</li> <li> <span>电影4的具体内容</span> </li> </ul> ``` JavaScript 代码: ```javascript //获取电影表 var movieList = document.getElementById('movieList'); //获取电影的所有 li 元素 var movieItems = movieList.getElementsByTagName('li'); //遍历电影的所有 li 元素 for (var i = 0; i < movieItems.length; i++) { //判断当前 li 元素的索引是否为奇数 if (i % 2 == 0) { //如果是奇数,则为该 li 元素添加鼠标滑过事件 movieItems[i].onmouseover = function() { //获取当前 li 元素的下一个兄弟节点 var content = this.nextSibling; //如果下一个兄弟节点不是 span 元素,则继续向下查找 while (content && content.nodeName != 'SPAN') { content = content.nextSibling; } //如果找到了 span 元素,则显示该 span 元素 if (content && content.nodeName == 'SPAN') { content.style.display = 'block'; //获取当前 li 元素的上一个兄弟节点 var prevItem = this.previousSibling; //如果上一个兄弟节点不是 li 元素,则继续向上查找 while (prevItem && prevItem.nodeName != 'LI') { prevItem = prevItem.previousSibling; } //如果找到了 li 元素,则为该 li 元素设置背景色 if (prevItem && prevItem.nodeName == 'LI') { //恢复所有行背景色 for (var j = 0; j < movieItems.length; j++) { movieItems[j].style.backgroundColor = ''; } //为当前奇数行重设背景色 this.style.backgroundColor = '#ccc'; //隐藏偶数行 content.previousSibling.style.display = 'none'; } } }; } } ``` 这段代码实现的功能是,当鼠标滑过索引值为奇数li 元素时,显示该 li 元素下面的 span 元素,同时隐藏该 li 元素下面的偶数 li 元素,为当前奇数设置背景色,恢复其他行的背景色
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值