美文网首页
前端小练习

前端小练习

作者: 盗花 | 来源:发表于2016-10-27 20:03 被阅读55次

小练习1

慕课网上的小练习。
制作一个表格,显示班级的学生信息。
要求:
1.鼠标移到不同行上时背景色改为色值为 #f2f2f2,移开鼠标时则恢复为原背景色 #fff
2.点击添加按钮,能动态在最后添加一行
3.点击删除按钮,则删除当前行
代码如下:

<!DOCTYPE html>
<html>
<head>
    <title> new document </title>
    <meta http-equiv="Content-Type" content="text/html; charset=gbk"/>
    <script type="text/javascript">

        window.onload = function () {
            // 鼠标移动改变背景,可以通过给每行绑定鼠标移上事件和鼠标移除事件来改变所在行背景色。
            var trs = document.getElementsByTagName("tr");
            for (var i = 0; i < trs.length; i++) {
                trs[i].onmouseover = function () {
                    this.style.backgroundColor = "#f2f2f2";
                };
                trs[i].onmouseout = function () {
                    this.style.backgroundColor = "#fff";
                }
            }
        };

        // 编写一个函数,供添加按钮调用,动态在表格的最后一行添加子节点;
        var num = 2;
        function add() {
            num++;
            var tr = document.createElement("tr");
            var xh = document.createElement("td");
            var xm = document.createElement("td");
            xh.innerHTML = "xh00" + num;
            xm.innerHTML = "第" + num + "学生";
            var del = document.createElement("td");
            del.innerHTML = "<a href='javascript:;' onclick='del(this);' >删除</a>";
            var tab = document.getElementById("table");
            tab.appendChild(tr);
            tr.appendChild(xh);
            tr.appendChild(xm);
            tr.appendChild(del);

            var trs = document.getElementsByTagName("tr");
            for (var i = 0; i < trs.length; i++) {
                trs[i].onmouseover = function () {
                    this.style.backgroundColor = "#f2f2f2";
                };
                trs[i].onmouseout = function () {
                    this.style.backgroundColor = "#fff";
                }
            }
        }

        // 创建删除函数
        function del(obj) {
            var tr = obj.parentNode.parentNode;
            tr.parentNode.removeChild(tr);
        }

    </script>
</head>
<body>
<table border="1" width="50%" id="table">
    <tr>
        <th>学号</th>
        <th>姓名</th>
        <th>操作</th>
    </tr>

    <tr>
        <td>xh001</td>
        <td>王小明</td>
        <td><a href="javascript:;" onclick="del(this);">删除</a></td>   <!--在删除按钮上添加点击事件  -->
    </tr>

    <tr>
        <td>xh002</td>
        <td>刘小芳</td>
        <td><a href="javascript:;" onclick="del(this)">删除</a></td>   <!--在删除按钮上添加点击事件  -->
    </tr>

</table>
<input type="button" value="添加一行" onclick="add()"/>   <!--在添加按钮上添加点击事件  -->
</body>
</html>

小练习2

实现选项卡切换的效果。效果如如下:


代码如下:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>实践题 - 选项卡</title>
    <style type="text/css">
        /* CSS样式制作 */
        * {
            padding: 0px;
            margin: 0px;
            font-size: 18px;
            font-weight: normal;
            font-family: "Microsoft Sans Serif";
        }

        #tabs {
            width: 330px;
            padding: 5px;
            height: 150px;
            margin: 20px;
        }

        ul {
            list-style-type: none;
            display: block;
            height: 30px;
            line-height: 30px;
            border-bottom: 2px saddlebrown solid;

        }

        ul li {
            background: #fff;
            float: left;
            cursor: pointer;
            list-style: none;
            height: 28px;
            line-height: 28px;
            margin: 0px 3px;
            border: 1px solid #aaa;
            border-bottom: none;
            display: inline-block;
            width: 60px;
            text-align: center;
        }

        #tabs ul li.on {
            border-top: 2px solid saddlebrown;
            border-bottom: 2px solid #fff;
        }

        #tabs div {
            height: 120px;
            line-height: 25px;
            border: 1px #336699 solid;
            border-top: none;
            padding: 5px;
        }

        .hide {
            display: none;
        }
    </style>

    <script type="text/javascript">

        // JS实现选项卡切换
        window.onload = function () {
            var oTab = document.getElementById("tabs");
            var oUl = oTab.getElementsByTagName("ul")[0];
            var oLis = oUl.getElementsByTagName("li");
            var oDivs = oTab.getElementsByTagName("div");

            for (var i = 0; i < oLis.length; i++) {
                oLis[i].index = i;
                oLis[i].onclick = function () {
                    for (var n = 0; n < oLis.length; n++) {
//                首先将全部的元素状态归零
                        oLis[n].className = "";
                        oDivs[n].className = "hide";
                    }
                    this.className = "on";
                    oDivs[this.index].className = "";
                }
            }
        };

    </script>

</head>
<body>
<!-- HTML页面布局 -->
<div id="tabs">
    <ul>
        <li class="on">房产</li>
        <li>家居</li>
        <li>二手房</li>
    </ul>
    <div>
        275万购昌平邻铁三居 总价20万买一居<br>
        200万内购五环三居 140万安家东三环<br>
        北京首现零首付楼盘 53万购东5环50平<br>
        京楼盘直降5000 中信府 公园楼王现房<br>
    </div>
    <div class="hide">
        40平出租屋大改造 美少女的混搭小窝<br>
        经典清新简欧爱家 90平老房焕发新生<br>
        新中式的酷色温情 66平撞色活泼家居<br>
        瓷砖就像选好老婆 卫生间烟道的设计<br>
    </div>
    <div class="hide">
        通州豪华3居260万 二环稀缺2居250w甩<br>
        西3环通透2居290万 130万2居限量抢购<br>
        黄城根小学学区仅260万 121平70万抛!<br>
        独家别墅280万 苏州桥2居优惠价248万<br>
    </div>
</div>

</body>
</html>

相关文章

  • 前端小练习

    小练习1 慕课网上的小练习。制作一个表格,显示班级的学生信息。要求:1.鼠标移到不同行上时背景色改为色值为 #f2...

  • 前端新手项目练习之钟表

    前端新手项目练习值钟表 前端新手记录自己在网络上找到的前端练习项目。 项目简介 一个简单的钟表,有刻度和数字,利用...

  • 前端新手项目练习之星级评分

    前端新手项目练习之星级评分 前端新手记录自己在网络上找到的前端练习项目。 项目简介 一个简单的星评分系统,鼠标移上...

  • 前端新手项目练习之可拖动弹窗

    前端新手项目练习之可拖动弹窗 前端新手记录自己在网络上找到的前端练习项目。最近工作忙得要死,感觉自己有些扛不住,这...

  • 小程序与后端联调踩坑

    小程序与后端联调踩坑 本次练习是以springboot作为后端开发框架、微信小程序做前端交互。 后端代码截图: s...

  • 2019-04-18

    日常复习数学,预计多多练习前端

  • 前端知识html+css小练习

    完成效果 代码

  • 前端模仿练习新增小知识(1)

    live-server:开发级的服务器 在phpstorm中打开的teminal中输入npm install li...

  • 前端模仿练习新增小知识(2)

    继续学习指令:v-for:实现循环,比较有用的排序函数function sortNum(a,b){return a...

  • 重点高中

    自己做的前端后台小程序,每天二十题练习,如果你想要那个年级题目tell me!现在是初中历史题

网友评论

      本文标题:前端小练习

      本文链接:https://www.haomeiwen.com/subject/afssuttx.html