DOM 节点 课程表
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
*{
margin: 0;
padding: 0;
}
ul{
width: 400px;
height: 400px;
border: 1px solid #000;
}
li{
width: 80px;
height: 40px;
list-style: none;
text-align: center;
line-height: 40px;
border: 1px solid #000;
float: left;
margin: 5px;
}
</style>
</head>
<body>
<ul>
<!--<li>语文<span>X</span></li>-->
</ul>
<button data-type="yw">语文</button>
<button>数学</button>
<button>英语</button>
<button>物理</button>
<button>化学</button>
<button>生物</button>
<button>政治</button>
<button>历史</button>
<button>地理</button>
<script>
var ul=document.getElementsByTagName("ul")[0];
//创建节点
//var nli=document.createElement("li");
//修改节点内容
//nli.innerHTML="yw";
//添加节点
//ul.append(nli);
var btns=document.getElementsByTagName("button");
//var ul=document.getElementsByTagName("ul")[0];
for(var i=0;i<btns.length;i++){
btns[i].onclick=function(){
//alert(this.innerHTML);
var hasLi=false;
//点击按钮,添加对应课程内容
var nli=document.createElement("li");
nli.innerHTML=this.innerHTML+"<span>X</span>";
//通过innerHTML来判断
var aLi=ul.getElementsByTagName("li");
//console.log(aLi[0].innerHTML.slice(0,14));
for(var i=0;i<aLi.length;i++){
if(this.innerHTML==aLi[i].innerHTML.slice(0,-14)){
hasLi=true;
break;
}else{
hasLi=false;
}
}
if(hasLi==false){
ul.append(nli);
}
//点击X,从ul中删除li;
var span=nli.getElementsByTagName("span")[0];
span.onclick=function(){
ul.removeChild(this.parentNode);
}
}
}
</script>
</body>
</html>
DOM 节点 课程表的更多相关文章
- 深入理解DOM节点操作
× 目录 [1]创建节点 [2]插入节点 [3]移除节点[4]替换节点[5]复制节点 前面的话 一般地,提起操作会想到“增删改查”这四个字,而DOM节点操作也类似地对应于此,接下来将详细介绍DOM的节 ...
- 深入理解DOM节点关系
× 目录 [1]父级属性 [2]子级属性 [3]同级属性[4]包含方法[5]关系方法 前面的话 DOM可以将任何HTML描绘成一个由多层节点构成的结构.节点分为12种不同类型,每种类型分别表示文档中不 ...
- 深入理解DOM节点类型第五篇——元素节点Element
× 目录 [1]特征 [2]子节点 [3]特性操作[4]attributes 前面的话 元素节点Element非常常用,是DOM文档树的主要节点:元素节点是html标签元素的DOM化结果.元素节点主要 ...
- 深入理解DOM节点类型第六篇——特性节点Attribute
× 目录 [1]特征 [2]属性 [3]方法 前面的话 元素的特性在DOM中以Attr类型表示,从技术角度讲,特性是存在于元素的attributes属性中的节点.尽管特性是节点,但却不是DOM节点树的 ...
- 深入理解DOM节点类型第四篇——文档片段节点DocumentFragment
× 目录 [1]特征 [2]作用 前面的话 在所有节点类型中,只有文档片段节点DocumentFragment在文档中没有对应的标记.DOM规定文档片段(document fragment)是一种“轻 ...
- 深入理解DOM节点类型第一篇——12种DOM节点类型概述
× 目录 [1]元素 [2]特性 [3]文本[4]CDATA[5]实体引用[6]实体名称[7]处理指令[8]注释[9]文档[10]文档类型[11]文档片段[12]DTD 前面的话 DOM是javasc ...
- DOM 节点的克隆与删除
无奈的开头 关于DOM节点操作,如果仅仅是根据标准API来操作,那是最简单不过的了.但是现实中却哪有这么容易的问题让我们解决,其实不仅仅是节点的克隆与删除,节点的添加也是如此,而且添加节点需要考虑的情 ...
- DOM节点属性
节点属性 在文档对象模型 (DOM) 中,每个节点都是一个对象.DOM 节点有三个重要的属性 : 1. nodeName : 节点的名称 2. nodeValue :节点的值 3. nodeType ...
- 第6章 DOM节点操作
一.创建节点 为了使页面更加智能化,有时我们想动态的在 html 结构页面添加一个元素标签,那么 在插入之前首先要做的动作就是:创建节点. varbox=$('<div id="box ...
随机推荐
- oracle12之 多租户容器数据库架构
解读: 这张幻灯片展示了三个被部署的应用程序的整合 三个不同的非cdbs成为一个单一的.幻灯片中的图形显示了一个多租户 容器数据库有四个容器:根和三个可插入的数据库.每一个 可插入数据库有它自己的专用 ...
- 团队作业4——第一次项目冲刺(Alpha版本) Day5
首先和助教及老师表示抱歉,博客确实当时就写了,但是一直不算写好,因为这几天卡住了,预计实现的功能实现不了,进度跟不上,现在也在寻求解决方法. 1.站立式会议: 2. Leangoo任务分解图: 3.任 ...
- Java学习4——java常用命令
javac file.java 编译Java文件,生成file.class(字节码) java file 执行Java程序,不加后缀.class java -version 查看Java版本 ...
- Swing-setBounds()用法-入门
先看API: public void setBounds(Rectangle r) 移动组件并调整其大小,使其符合新的有界矩形 r.由 r.x 和 r.y 指定组件的新位置,由 r.width 和 r ...
- 201521123016 《Java程序设计》第7周学习总结
1. 本周学习总结 2. 书面作业 1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 public boolean contains(Object o) { re ...
- 201521123111《Java程序设计》第3周学习总结
1. 本章学习总结 你对于本章知识的学习总结 2. 书面作业 1. 代码阅读 代码阅读 public class Test1 { private int i = 1;//这行不能修改 private ...
- 201521123112《Java程序设计》第2周学习总结
1.本周学习总结 本周在课堂面授课粗略讲了<Java学习笔记>中的第三章,其内容大部分都与上学期学习的数据结构差不多,所以只是粗略的复习了一下就带过,然后通过将PTA上的实验便于我们本周的 ...
- JAVA课程设计--------五子棋
1.团队课程设计博客链接 http://www.cnblogs.com/mz201521044152/p/7065575.html 2.个人负责模块或任务说明 1.重新开始:写一个restartgam ...
- [LeetCode]Count and Say 计数和发言
Count and Say 计数和发言 思路:首先要理解题意,可以发现后者是在前者的基础之上进行的操作,所以我们拿之前的结果作为现在函数的参数循环n-1次即可,接下来就是统计字符串中相应字符的个数,需 ...
- python日记_01 python实现6个人围成一圈,扔到第三个人出局,循环扔的问题。
#!/usr/bin/python shoplist=['mango','apple','carrot','banana','oracle','python'] length = len(shopli ...