DOM元素
<button>点我</button>
<script>
document.write("<li class='kk'>生活</li>")
</script>
<button>点我</button>

弊端:把原来的内容替换掉
var but=document.getElementsByTagName("button")[0];
//console.log(document.write);是一个函数
but.onclick=function () {
document.write("<li class='kk'>生活</li>");
}
2、事件源.innerHTML +="<li></li>"(经常用,写上 + 号,原来的内容不会被替换)
ul.innerHTML+="<li class='kk'>生活</li>"
//利用dom的api创建元素 把创建的元素放在变量里
var newLi=document.createElement("li");
var newL=document.createElement("li");
//赋值
newLi.innerHTML="我是createElement创建的";
newL.innerHTML="我是appendChild创建的";
//添加到ul原来里面
ul.appendChild(newL);
//指定位置添加
var firUl=ul.firstElementChild || ul.firstChild;
ul.insertBefore(newLi,firUl)

ul.removeChild(li3)
2、replaceChild("新节点",“旧节点”)替换节点(用的少)
ul.replaceChild(li3,li2)
3、克隆node.cloneNode(true)
//克隆li2标签 li2.cloneNode(true);深层复制。
for(var i=; i<; i++){
var clLi=li2.cloneNode(true);
ul.appendChild(clLi)
}
案例
点击按钮添加li列表,鼠标放上去高亮显示(鼠标离开也会有一个亮)
//需求:点击列表,添加四大美女,然后鼠标放到谁上面,谁高亮显示
//思路:创建一个数组,添加内容。利用for循环创建li标签添加到ul里面
//步骤:(指定多少个元素的创建最好用for循环)
var but=document.getElementsByTagName("button")[];
var arr=["昭君","西施","贵妃","貂蝉"];
var ul=document.getElementsByTagName("ul")[];
but.onclick=function(){
ul.innerHTML="";//只添加一次 原理,每次循环清空了在添加
for(var i=; i<arr.length; i++){
var li=document.createElement("li");
li.innerHTML=arr[i];
ul.appendChild(li);
}
//获取所有的Li标签然后,为他绑定事件,排他思想,高亮显示
var liArr=ul.children;
for(var i=; i<liArr.length; i++){
liArr[i].onmouseover=function(){
for(var j=; j<liArr.length; j++){
liArr[j].style.background=""
}
this.style.background="red"
}
}
}
在线用户


DOM元素的更多相关文章
- jQuery操作DOM元素
作为一个后端程序员,也是要和前端页面打交道的.最常见的场景莫过DOM元素操作和前端页面使用AJAX向服务器发送请求.实现上述两个功能当然可以使用原生js来完成,但在实际开发过程中很少这样做,通常会使用 ...
- JQuery利用sort对DOM元素进行排序
前言 排序对于我们是再熟悉不过了,在绝大数应用程序中都会有这样一个场景:当我们从服务器端获取一个列表时,在界面上进行渲染,我们可以会依赖于某一个规则来进行排序,当然此时绝大多数会再次与服务器进行交互来 ...
- html标签属性(attribute)和dom元素的属性(property)
简介 attribute和property都有属性之意,但对于attribute和property的区分其实并不难.从对象来说,attribute是html文档上标签属性, 而property则是对应 ...
- jQuery操纵DOM元素属性 attr()和removeAtrr()方法使用详解
jQuery操纵DOM元素属性 attr()和removeAtrr()方法使用详解 jQuery中操纵元素属性的方法: attr(): 读或者写匹配元素的属性值. removeAttr(): 从匹配的 ...
- 如何隐藏DOM元素
在CSS中,要隐藏DOM元素常见的方法有: 设置元素的opacity值为0 设置元素的visibility值为hidden 设置元素的display值为none 设置元素的position值为abso ...
- HTML DOM元素的Dragdrop
在前端web页面中,为了提高用户体验,通常会希望将页面中的元素设计成可dragdop的,简化用户操作.这一设计特性在缺少鼠标的触摸屏设备上,显得更为重要. 在早期的应用中,我们通常需要借助第三方的ja ...
- DOM元素querySelectorAll可能让你意外的特性表现
一.时间紧急,废话少说 本文所在的页面藏匿了下面这些代码: <img id="outside"> <div id="my-id"> &l ...
- 使用dom元素和jquery元素实现简单增删改的练习
软件开发实际就是数据的增删改查,javascript前端开发也不例外.今天学了jquery框架的简单使用.于是用它实现简单的增删改,接着也用原始的javascript实现同样的功能,以便看出jquer ...
- 返本求源——DOM元素的特性与属性
抛砖引玉 很多前端类库(比如dojo与JQuery)在涉及dom操作时都会见到两个模块:attr.prop.某天代码复查时,见到一段为某节点设置文本的代码: attr.set(node, 'inner ...
- 【面试必备】javascript操作DOM元素
前言 时间过的真快,不知不觉就到年底了.问问自己,这一年你对自己的工作满意吗? 评价标准是什么呢?当然是马云的那两条准则了:钱给到了吗?干的爽吗?如果答案都是no,那么,你准备好跳槽了吗? 为了应对年 ...
随机推荐
- 使ul中的li居中
1.如果li设置了float:left; 解决办法: 1.ul父元素的标签设置:text-align: center; 2.ul设置: display: inline-block; 2.li不设置fl ...
- Nginx用法详解
nginx作为一个高性能的web服务器,想必大家垂涎已久,蠢蠢欲动,想学习一番了吧,语法不多说,网上一大堆.下面博主就nginx的非常常用的几个功能做一些讲述和分析,学会了这几个功能,平常的开发和部署 ...
- H5的本地存储(localStorage)和cookie比较
HTML5 的 web Storage 存储方式有两种:localStorage 和 sessionStorage. sessionStorage就像是会话级别的cookie,数据会随着浏览器关闭而清 ...
- javaIO——PipedReader 和 PipedWriter 实现模拟即时聊天
上一篇学习了javaIO里面的 PipedReader 和 PipedWriter,这里对两个类做一个小小的练习:实现一个即时消息发送和接收的聊天系统(这里只实现单向发送,双向同理,定义两个管道即可) ...
- merge into 笔记
1 IF EXISTS (SELECT 1 FROM sys.types t join sys.schemas s on t.schema_id=s.schema_id ...
- 2.第一个MyBatis程序
1.导入jar包 2.定义实体类 3.创建对应的表 4.定义Dao接口 public interface StudentDAO { public void saveStudent(Student s) ...
- 5.1 Request 获取请求数据的几种方法
//获取请求头和请求数据 //请求数据(1.通过超链接 2.通过表单) //获取请求数据的时候一般来说 都要先检查 再使用 public class RequestDemo2 extends Http ...
- 修改一张MyISAM表row_format为fixed为InnoDB表报错处理
最近优化GTID模式下事务表和非事务表更新报错处理时,发现某几张表更改存储引擎为InnoDB报错如下: mysql> alter table sc_xxx_video_xxxxengine = ...
- springboot升级2.0 fastjson报错? 2.0以上应该怎么整合fastjson?
SpringBoot2.0如何集成fastjson?在网上查了一堆资料,但是各文章的说法不一,有些还是错的,可能只是简单测试一下就认为ok了,最后有没生效都不知道.恰逢公司项目需要将JackSon换成 ...
- c语言之一个简单的《学生教师管理系统》小结记录(二)
本篇博文用来记录学生头/教师文件建立以及结构体链表创建及链表相关操作 首先是头文件的建立 头文件包含学生结构体以及链表结构 1.学生结构体建立 /****定义学生信息******/ typedef s ...