案列 JS/m

1.随机抽100个小方格

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        .box{
            width: 500px;
            height: 500px;
            border: 4px solid #f00;
            margin: 50px auto;
        }
        .box div{
            width: 18px;
            height: 18px;
            border: 1px solid #f00;
            float: left;
        }
        .active{
            background-color: #f00;
        }
    </style>
    <script src="./tools.js"></script>
</head>
<body>
    <div class="box">
    </div>
    <script>
        var oBox = document.querySelector('.box');
        // 1. 创建小盒子,创建25*25个,625个
        // 2. 625盒子放在box中
        // dom操作是耗时操作
        var str = '';
        for(var i=1;i<=625;i++){
            str += '<div></div>';
        }
        oBox.innerHTML = str;

        var minBox = document.querySelectorAll('.box div');
        // 2.1 给box添加点击事件
        oBox.onclick = function(){
            // 3. 生成100个随机数,范围 0-624之间,得到数组
            var newArr = createDiv();
            console.log(newArr);
            // 4. 遍历数组,找到对应的小方格的位置,添加类名
            // 625个小盒子
            // for(var i=0;i<minBox.length;i++){
            //     // 清除小盒子的红色背景
            //     minBox[i].style.backgroundColor = 'white';
            // }
            // for(var i=0;i<newArr.length;i++){
            //     // 给新数组newArr的小盒子添加红色
            //     minBox[newArr[i]].style.backgroundColor = 'red';
            // }

            for(var i=0;i<minBox.length;i++){
                // 清除小盒子的红色背景
                minBox[i].style.backgroundColor = 'white';
                if(newArr.indexOf(i) >= 0){
                    minBox[i].style.backgroundColor = 'red';
                }
            }
        }
       
        function createDiv(){
            var temp = [];
            while(temp.length < 100){
                var num = rand(0,624);
                if(temp.indexOf(num) == -1){
                    temp.push(num);
                }
            }
            return temp;
        }
    </script>
</body>
</html>

 2.删除和添加

body>
    <ul id="ul"></ul>
    <input type="text" id="text">
    <button id="add1">头部添加</button>
    <button id="add2">尾部添加</button>
    <button id="del1">头部删除</button>
    <button id="del2">尾部删除</button>
</body>
<script>
    // 1. 数据后端传递给我们,假设数组,遍历数组
    var oUl = document.querySelector('#ul');
    var add1 = document.querySelector('#add1');
    var add2 = document.querySelector('#add2');
    var del1 = document.querySelector('#del1');
    var del2 = document.querySelector('#del2');
    var myText = document.querySelector('#text');
    var arr = ['张三','张三丰','章子怡','傻子张','张无忌','涨粉一'];
    // 渲染数据
    show();
    // 2. 给四个按钮点击事件
    add1.onclick = function(){
        // 3. 添加操作,还需要获取input框中的值
        arr.unshift(myText.value);
        // 清空input框的数据
        myText.value = '';
        // 渲染数据
        show();
    }
    add2.onclick = function(){
        // 3. 添加操作,还需要获取input框中的值
        arr.push(myText.value);
        // 清空input框的数据
        myText.value = '';
        // 渲染数据
        show();
    }
    del1.onclick = function(){
        // 3. 添加操作,还需要获取input框中的值
        arr.shift();
        // 渲染数据
        show();
    }
    del2.onclick = function(){
        // 3. 添加操作,还需要获取input框中的值
        arr.pop();
        // 渲染数据
        show();
    }
    // 3. 添加操作,还需要获取input框中的值
    // 4. 删除,就是删除数组中的值
    // 5. 元素身上的删除,可以使用splice实现删除

    // 封装了一个数据的渲染
    function show(){
        var str = '';
        for(var i=0;i<arr.length;i++){
            str += `<li>${arr[i]}&nbsp;&nbsp;<button>删除</button></li>`;
        }
        oUl.innerHTML = str;
    }
</script>

3.输入时间 提示问候

   var times = prompt("请输入时间:");
        function get(times) {
          
            let  d= new Date(times);
          console.log(d);
            let hour = now.getHours();
           
            if (hour >= 0 && hour < 12) {
                return "早上好";
            } else if (hour >= 12 && hour < 14) {
                return "中午好";
            } else if (hour >= 14 && hour < 18) {
                return "下午好";
            } else if (hour >= 18 && hour < 24) {
                return "晚上好";
            } else {
                return "凌晨好";
            }
        }

        console.log(get(times))

4.倒计时

   cd.onclick = function (){
               function x(tim){
                   if(tim>0){
                       cf.innerHTML = tim+"秒";
                       setInterval(function(){ 
                    x(tim - 1);  
                       },1000);               
                   }else{
                    alert('结束')
                   }
               }
               x(10);
             }

5.填充数据


<body>
    <ul id="ul">
        <li>
            汉堡店
            <ul>
                <li>小吃系列</li>
                  <ul>
                    <li>炸鸡</li>
                    <li>薯条</li>
                  </ul>
                <li>汉堡系列</li>
                <ul>
                    <li>炸鸡</li>
                    <li>薯条</li>
                    <li>薯条</li>

                  </ul>
                <li>饮品系列</li>
                <ul>
                    <li>炸鸡</li>
                    <li>薯条</li>
                    <li>薯条</li>
                    <li>薯条</li>

                  </ul>
            </ul>
        </li>
    </ul>
</body>
<script>
    var foodData = {
        code: 200,
        data: [
            {
                "title": "汉堡店",
                "cont": [
                    {
                        "title": "小吃系列",
                        "foods": ['炸鸡翅', '薯条']
                    }, {
                        "title": "汉堡系列",
                        "foods": ['芝士汉堡', '牛肉汉堡', '鸡肉堡']
                    }, {
                        "title": "饮品系列",
                        "foods": ['果汁', '可乐', '咖啡']
                    }
                ]
            },
            {
                "title": "牛排店",
                "cont": [
                    {
                        "title": "牛排系列",
                        "foods": ['菲力牛排', '战俘牛排']
                    }, {
                        "title": "咖啡系列",
                        "foods": ['冷萃咖啡', '椰奶咖啡', '卡布奇诺']
                    }, {
                        "title": "沙拉系列",
                        "foods": ['蔬菜沙拉', '金枪鱼沙拉', '水果沙拉']
                    }
                ]
            },
            {
                "title": "牛",
                "cont": [
                    {
                        "title": "小吃系列",
                        "foods": ['菲力牛排', '战俘牛排']
                    }, {
                        "title": "汉堡系列",
                        "foods": ['冷萃咖啡', '椰奶咖啡', '卡布奇诺']
                    }, {
                        "title": "饮品系列",
                        "foods": ['蔬菜沙拉', '金枪鱼沙拉', '水果沙拉']
                    }
                ]
            }
        ]
    }

    var cd = foodData.data;
    console.log(foodData.data.title);

    var lis = '';
    var lis1 = '';
    for (var i = 0; i < cd.length; i++) {
        lis += ` <li>
                ${cd[i].title}
              
               `
        for (var j = 0; j < foodData.data[i].cont.length; j++) {
            console.log(j);
            lis += `    <br>
                        ${foodData.data[i].cont[j].title}
                        </li> `
            console.log(lis1);
            for (var k = 0; k < foodData.data[i].cont[j].foods.length; k++) {
            lis += `<ul>
                        <li>${foodData.data[i].cont[j].foods[k]}</li>
                        </ul>
                    </ul> `}

        }
        

    }
    ul.innerHTML = lis;





</script>

6.图片排序

<style>
        * {
            padding: 0;
            margin: 0;
            list-style: none;
        }

        body {
            background: #E8BC9A;
        }

        #box1 {
            width: 600px;
            margin: 10px auto;
            border: 5px solid #8B85E6;
            padding: 4px;
            overflow: hidden;
        }

        #box1 li {
            width: 140px;
            height: 160px;
            border: 2px solid #ccc;
            float: left;
            position: relative;
            margin-left: 5px;
            margin-top: 5px;
        }

        #box1 li img {
            width: 140px;
            height: 160px;

        }

        #box1 li span {
            position: absolute;
            top: 0;
            left: 0;
            border: 2px solid #fff;
            color: #fff;
            background: #000;
            font-size: 25px;
            width: 30px;
            height: 30px;
            line-height: 30px;
            text-align: center;
        }
    </style>
</head>

<body>

    <input type="button" value="从小到大" id="xiao">
    <input type="button" value="从大到小" id="da">
    <!-- <input type="button" value="乱七八糟"> -->
    <div id="box1">
        <ul class="clear">
            <li>
                <img src="img/1.jpg" alt=""><span>1</span>
            </li>
            <li>
                <img src="img/2.jpg" alt="">
                    <span>2</span>
            </li>
            <li>
                <img src="img/3.jpg" alt="">
                    <span>3</span>
            </li>
            <li>
                <img src="img/4.jpg" alt="">
                    <span>4</span>
            </li>
            <li>
                <img src="img/5.jpg" alt="">
                    <span>5</span>
            </li>
            <li>
                <img src="img/6.jpg" alt="">
                    <span>6</span>
            </li>
            <li>
                <img src="img/7.jpg" alt="">
                    <span>7</span>
            </li>
            <li>
                <img src="img/8.jpg" alt="">
                    <span>8</span>
            </li>
        </ul>
    </div>
</body>
<script>
    var arr=[1,2,3,4,5,6,7,8];
    var imgs=document.querySelectorAll("ul img");
    var spans=document.querySelectorAll("ul span");
    console.log(imgs);
    console.log(spans[0]);



       xiao.onclick=function(){
        arr.sort(function(a,b){
            return a-b;
        });
           for(var i=0;i<imgs.length;i++){
            imgs[i].src = 'img/' + arr[i] + '.jpg';
            spans[i].innerHTML=arr[i];
           }
       }
         
       da.onclick=function(){
        arr.sort(function(a,b){
            return b-a;
        });
           for(var i=0;i<imgs.length;i++){
            imgs[i].src = 'img/' + arr[i] + '.jpg';
            spans[i].innerHTML=arr[i];
           }
       }
         

</script>

7.跳动时间

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>时间</title>
    <style>
        ul {
            margin: 200px auto 0;
            padding: 0;
            width: 400px;
            height: 70px;
        }

        li {
            list-style: none;
            position: relative;
            width: 50px;
            height: 70px;
            overflow: hidden;
            float: left;
        }

        li div {
            position: absolute;
            left: 0;
            top: 0;
            width: 50px;
            height: 140px;
        }

        li img {
            float: left;
        }

        li span {
            display: block;
            background: url('img/c.jpg');
            width: 50px;
            height: 70px;
        }

        li.dian {
            background: url('img/b.jpg');
        }

        li span.active {
            background: url('img/b.jpg');
        }
    </style>


</head>

<body>
    <ul id="box">
        <li>
            <div>
                <img src="img/0.jpg" />
                <!-- <img src="img/0.jpg" /> -->
            </div>
        </li>
        <li>
            <div>
                <img src="img/0.jpg" />
                <!-- <img src="img/0.jpg" /> -->
            </div>
        </li>
        <li class="dian"><span></span></li>
        <li>
            <div>
                <img src="img/0.jpg" />
                <!-- <img src="img/0.jpg" /> -->
            </div>
        </li>
        <li>
            <div>
                <img src="img/0.jpg" />
                <!-- <img src="img/0.jpg" /> -->
            </div>
        </li>
        <li class="dian"><span></span></li>
        <li>
            <div>
                <img src="img/0.jpg" />
                <!-- <img src="img/0.jpg" /> -->
            </div>
        </li>
        <li>
            <div>
                <img src="img/0.jpg" />
                <!-- <img src="img/0.jpg" /> -->
            </div>
        </li>
    </ul>

    <div style="position: absolute; top: -9999; "></div>
</body>
<script>

    s();
    setInterval(s, 1000);




    function s() {
        var d = new Date();
        var h = a(d.getHours());
        var m = a(d.getMinutes());
        var s = a(d.getSeconds());
        console.log(h + '时' + m + '分' + s + '秒');
        var arr = h + m + s;
        var li = document.querySelectorAll('#box div');

        for (var i = 0; i < li.length; i++) {

            var imgs = li[i].querySelector('img');
            console.log(imgs);
            imgs.src = 'img/' + arr[i] + '.jpg';

        }
    }

    function a(tims) {
        if (tims < 10) {
            tims = '0' + tims;
        } else {
            tims = String(tims);
        }
        return tims;
    }
</script>

</html>

8.点名

<body>
   
        <div class="bz">
            <div id="cf">可以</div>
        <button id="cd">开始</button>
        <button id="dc">暂停</button>
       
    </div>

    
    <script>
        var tim;
        cd.onclick = function (){
            clearInterval(tim);
              var a=['小明','小红','小亮亮','小蓝','小朋友','神话'];
            
              tim=setInterval(function(){
                var  c=Math.floor(Math.random()*((a.length)+0))
              cf.innerHTML = a[c];w
              },-10)
             }
             function show(){
            clearInterval(tim);
        }
          dc.onclick= show;
          var myCf=document.querySelector('#cf')
          var myCd=document.querySelector('#cd');
          var mydc=document.querySelector('#dc');
          var tim;
          var nab=false;
          var a=['小明','小红','小亮亮','小蓝','小朋友','神话'];
          myCd.onclick=function(){
            console.log(1);
            if(nab==false){
                myCd.innerHTML='暂停'
                nab=true;
              tim=setInterval(function(){
                let names=Math.floor(Math.random()*((a.length)))
                myCf.innerHTML=a[names]
              },10)
            }else{
                myCd.innerHTML='开始'
                nab=false;
                clearInterval(tim) 
            }
           
          }

9.自动生成日历

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        body {
          text-align: center;
        }
        
        .box {
          margin: 0 auto;
          width: 880px;
        }
        
        .title {
          background: #ccc;
        }
        
        table {
          height: 200px;
          width: 200px;
          font-size: 12px;
          text-align: center;
          float: left;
          margin: 10px;
          font-family: arial;
        }
      </style>
</head>
<body>
    <script>
        var year = parseInt(prompt('输入年份:', '2022')); // 制作弹窗输入年份,默认为2022年
        document.write(calendar(year));//调用函数生成指定年份的年历
        
        function calendar(year){
            var html = "<div class='box'>";
            for(var m=0;m<=11;m++){
                // 获取每月的第一天的星期
                var w = new Date(year,m).getDay();
                html += `<table>
                    <tr class="title"><td colspan='7'>${year}年${m+1}月</td></tr>
                    <tr><td>日</td><td>一</td><td>二</td><td>三</td><td>四</td><td>五</td><td>六</td></tr>
                    `;
                // 获取每月的天数
                var max = new Date(year,m,0).getDate(); 
                // console.log(max);
                html += '<tr>'
                for(var d=1; d <= max; d++){
                    // html += '<td>' + d + '</td>';
                    //如果该月的第1天不是星期日,则填充空白
                    if (w && d == 1) {
                        html += '<td colspan ="' + w + '"> </td>';
                    }
                    html += '<td>' + d + '</td>';
                    if (new Date(year,m,d).getDay()==6) {//如果星期六不是该月的最后一天,则换行
                        html += '</tr><tr>';
                    } else if (d == max) {//该月的最后一天,闭合</tr>标签
                        html += '</tr>';
                    }
                }
                html += '</tr>'
            }
            html += '</table></div>';
            return html;
        }
    </script>
</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值