Javascript进阶篇——总结--DOM案例+选项卡效果

断断续续的把慕课的JavaScript基础和进阶看完了,期间不怎么应用有的都忘记了,接下来多开始写些效果,进行实际应用。

制作一个表格,显示班级的学生信息。

1. 鼠标移到不同行上时背景色改为色值为 #f2f2f2,移开鼠标时则恢复为原背景色 #fff

2. 点击添加按钮,能动态在最后添加一行

3. 点击删除按钮,则删除当前行

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4 <title> new document </title>
 5 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
 6 <script type="text/javascript">
 7     window.onload = function(){
 8         // 鼠标移动改变背景,可以通过给每行绑定鼠标移上事件和鼠标移除事件来改变所在行背景色。
 9         var trs = document.getElementsByTagName("tr");
10         for(i = 0; i < trs.length; i++){
11             trs[i].onmouseover = function(){
12                 this.style.background = "#f2f2f2";
13             }
14
15             trs[i].onmouseout = function(){
16                 this.style.background = "#fff";
17             };
18         };
19     };
20
21     // 编写一个函数,供添加按钮调用,动态在表格的最后一行添加子节点;
22     function addOne(){
23         var tbody = document.getElementById("table").lastChild;
24         var tr = document.createElement("tr");
25
26         var td = document.createElement("td");
27         td.innerHTML = ("<input type=‘text‘/>");
28         tr.appendChild(td);
29
30         var td = document.createElement("td");
31         td.innerHTML = ("<input type=‘text‘/>");
32         tr.appendChild(td);
33
34         var td = document.createElement("td");
35         td.innerHTML = ("<a onclick=‘delet(this)‘ href=‘javascript:;‘ >删除</a>");
36         tr.appendChild(td);
37
38         tbody.appendChild(tr);
39     }
40
41     // 创建删除函数
42     function delet(ss){
43         var tbody = document.getElementById("table").lastChild;
44         var tr = ss.parentNode.parentNode;
45         tbody.removeChild(tr);
46     }
47 </script>
48 </head>
49 <body>
50     <table border="1" width="50%" id="table">
51         <tr>
52             <th>学号</th>
53             <th>姓名</th>
54             <th>操作</th>
55         </tr>
56         <tr>
57             <td>xh001</td>
58             <td>王小明</td>
59             <td><a onclick="delet(this)" href="javascript:;" >删除</a></td>   <!--在删除按钮上添加点击事件  -->
60         </tr>
61         <tr>
62             <td>xh002</td>
63             <td>刘小芳</td>
64             <td><a onclick="delet(this)" href="javascript:;" >删除</a></td>   <!--在删除按钮上添加点击事件  -->
65         </tr>
66     </table>
67     <input type="button" value="添加一行" onclick="addOne()" />   <!--在添加按钮上添加点击事件  -->
68 </body>
69 </html>

选项卡效果:

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4 <meta charset="UTF-8">
 5 <title>实践题 - 选项卡</title>
 6 <style type="text/css">
 7 /* CSS样式制作 */
 8     *{  padding: 0; margin: 0; }
 9     ul li{ list-style: none; }
10     #tabs{ width: 276px; margin-left: 50px;}
11     #tabs .tabs_title{ border-bottom: 2px solid #8B4513; height: 32px;}
12     #tabs .tabs_title li{ float: left; display: inline-block; background: #fff; width: 80px; line-height: 30px; text-align: center; border: 1px solid #eeefef; border-bottom: none; margin-right: 10px; cursor: pointer;}
13     #tabs .tabs_title .on{ border-top:2px solid #8B4513;border-bottom:2px solid #FFFFFF; }
14     #tabs div{ border: 1px solid #7396b8; border-top: none; line-height: 38px; }
15     #tabs .tabs_hide{ display: none; }
16 </style>
17 <script type="text/javascript">
18 // JS实现选项卡切换
19 window.onload = function(){
20     var tabs = document.getElementById("tabs");
21     var tabs_ul = tabs.getElementsByTagName("ul")[0];
22     var tabs_li = tabs_ul.getElementsByTagName("li");
23     var tabs_main = tabs.getElementsByTagName("div");
24     for (var i = 0 , len = tabs_li.length; i < len; i++) {
25         tabs_li[i].index = i;
26         tabs_li[i].onclick = function(){
27             for(var n = 0; n < len; n++){
28                 tabs_li[n].className = "";
29                 tabs_main[n].className = "tabs_hide";
30             }
31              this.className = "on";
32              tabs_main[this.index].className = "";
33         }
34     }
35 }
36 </script>
37 </head>
38 <body>
39 <!-- HTML页面布局 -->
40 <div id="tabs">
41     <ul class="tabs_title">
42         <li class="on">房产</li>
43         <li>家居</li>
44         <li>二手房</li>
45     </ul>
46     <div>
47         <p>275万购昌平邻铁三居 总价20万买一居</p>
48         <p>200万内购五环三居 140万安家东三环</p>
49         <p>北京首现零首付楼盘 53万购东5环50平</p>
50         <p>京楼盘直降5000 中信府 公园楼王现房</p>
51     </div>
52     <div class="tabs_hide">
53         <p>40平出租屋大改造 美少女的混搭小窝</p>
54         <p>经典清新简欧爱家 90平老房焕发新生</p>
55         <p>新中式的酷色温情 66平撞色活泼家居</p>
56         <p>瓷砖就像选好老婆 卫生间烟道的设计</p>
57     </div>
58     <div class="tabs_hide">
59         <p>通州豪华3居260万 二环稀缺2居250w甩</p>
60         <p>西3环通透2居290万 130万2居限量抢购</p>
61         <p>黄城根小学学区仅260万 121平70万抛!</p>
62         <p>独家别墅280万 苏州桥2居优惠价248万</p>
63     </div>
64 </div>
65 </body>
66 </html>
时间: 2024-08-02 15:14:10

Javascript进阶篇——总结--DOM案例+选项卡效果的相关文章

JavaScript 进阶篇的学习~

---恢复内容开始--- 让你认识JS 你知道吗,Web前端开发师需要掌握什么技术?也许你已经了解HTML标记(也称为结构),知道了CSS样式(也称为表示),会使用HTML+CSS创建一个漂亮的页面,但这还不够,它只是静态页面而已.我们还需使用JavaScript增加行为,为网页添加动态效果.准备好,让JavaScript带你进入新境界吧! JavaScript能做什么? 1.增强页面动态效果(如:下拉菜单.图片轮播.信息滚动等) 2.实现页面与用户之间的实时.动态交互(如:用户注册.登陆验证等

#笔记#JavaScript进阶篇一

#JavaScript进阶篇 http://www.imooc.com/learn/10 #认识DOM #window对象 浏览器窗口可视区域监测—— 在不同浏览器(PC)都实用的 JavaScript 方案: var w= document.documentElement.clientWidth || document.body.clientWidth; var h= document.documentElement.clientHeight || document.body.clientHe

javascript 一个页面多个tab选项卡效果

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>javascript 一个页面多个tab选项卡效果</title> <script> var tab=function(id,event){ var oDiv=document.getElementById(id); var oBtn=oDiv.getElementsByTagName(

慕课网javascript 进阶篇 第九章 编程练习

把平常撸的码来博客上再撸一遍既可以加深理解,又可以理清思维.还是很纯很纯的小白,各位看官老爷们,不要嫌弃.最近都是晚睡,昨晚也不例外,两点多睡的.故,八点起来的人不是很舒服,脑袋有点晕呼呼,鉴于昨晚看到了这章的编程练习,想着自己DOM编程艺术也差不多看完了,高级3也看了点,所打算开始多敲代码了. 谁知,看着编辑器一脸懵逼,不知道如何啃下这块骨头,米思绪,写着也没什么感觉,索性就不写了,这不下午才来撸它. 要求如下: <!DOCTYPE html> <html> <head&g

Javascript进阶篇——(DOM—节点---属性、访问节点)—笔记整理

节点属性在文档对象模型 (DOM) 中,每个节点都是一个对象.DOM 节点有三个重要的属性 : 1. nodeName : 节点的名称 2. nodeValue :节点的值 3. nodeType :节点的类型 一.nodeName 属性: 节点的名称,是只读的. 1. 元素节点的 nodeName 与标签名相同 2. 属性节点的 nodeName 是属性的名称 3. 文本节点的 nodeName 永远是 #text 4. 文档节点的 nodeName 永远是 #document 二.nodeV

Javascript进阶篇——(DOM—节点---插入、删除和替换元素、创建元素、创建文本节点)—笔记整理

插入节点appendChild()在指定节点的最后一个子节点列表之后添加一个新的子节点.语法: appendChild(newnode) //参数: //newnode:指定追加的节点. 为ul添加一个li,设置li内容为PHP,代码如下: 1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=

慕课网javascript 进阶篇 第十章 编程练习

---恢复内容开始--- 第十章的编程练习是选项卡切换的问题. 先分析下思路, 一.HTML页面布局 我们可以用ui li 标签来写最上面一行的内容:用个div来装下面内容,为了实现更多的效果,我们可以把上面那行的文字放在<a>标签里. 二.CSS样式制作 对文档进行基本的样式设置,font color border 那些 三.JS实现选项卡切换 通过改变DOM的css类名称,当前点击的选项卡显示,其它隐藏. ---恢复内容结束--- 第十章的编程练习是选项卡切换的问题. 先分析下思路, 一.

编程挑战JavaScript进阶篇(慕课网题目)

编程挑战 现在利用之前我们学过的JavaScript知识,实现选项卡切换的效果. 效果图: 文字素材: 房产: 275万购昌平邻铁三居 总价20万买一居    200万内购五环三居 140万安家东三环    北京首现零首付楼盘 53万购东5环50平    京楼盘直降5000 中信府 公园楼王现房 家居: 40平出租屋大改造 美少女的混搭小窝     经典清新简欧爱家 90平老房焕发新生     新中式的酷色温情 66平撞色活泼家居     瓷砖就像选好老婆 卫生间烟道的设计 二手房: 通州豪华3

JavaScript 进阶学习 7 DOM对象,控制HTML元素

DOM :文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). getElementsByName()方法 :返回带有指定名称的节点对象的集合. 语法 : document.getElementsByName(name) 与getElementById() 方法不同的是,通过元素的 name 属性查询元素,而不是通过 id 属性. 注意: 1. 因为文档中的 name 属性可能不