创建DOM元素
createElement(标签名)  创建一个节点
appendChild(节点)  追加一个节点
例子:为ul插入li
插入元素
insertBefore(节点, 原有节点)  在已有元素前插入
例子:倒序插入li
删除DOM元素
removeChild(节点)  删除一个节点
例子:删除li
 
文档碎片
文档碎片可以提高DOM操作性能(理论上)
文档碎片原理
document.createDocumentFragment()
 
                                                                            创建 <li>
 
 
 
 <script>
window.onload= function ()
{
var oBtn=document.getElementById('btn1');
var oUl=document.getElementById('ull');
var ali=document.getElementsByTagName('li');
var oTxt=document.getElementById('txt');
oBtn.onclick=function ()
{
var oLi=document.createElement('li');
//父级.appendChild(子节点);
//oUl.appendChild(oLi);//在已有元素后插入
oLi.innerHTML=oTxt.value;
//oUl.insertBefore(oLi,ali[0]);//在任意元素前插入
//为了兼容, 最好选择下面这种方法,原因是有时ul里会没有li标签
//alert(ali.length);//判断li的个数
if(ali.length>0)
{
oUl.insertBefore(oLi,ali[0]);
}
else{oUl.appendChild(oLi); }
} }
</script>
</head> <body> <div id="divId">
<input type="text" id="txt"/>
<input type="button" id="btn1" value="创建 li"/>
<ul id="ull">
<li>jgjghmjnhg</li>
<li>1234255535</li>
<li>vmhmbmbmbh</li>
<li>6878987978</li>
</ul> </div> </body>
                                                                                 删除<li>
 
 

 <script>
window.onload= function ()
{
var aHref=document.getElementsByTagName('a');
var oUl=document.getElementById('ull');
for(var i=0 ; i<aHref.length;i++)
{
aHref[i].onclick=function ()
{
oUl.removeChild(this.parentNode);
}
} }
</script>
</head> <body> <div id="divId"> <ul id="ull">
<li>jgjghmjnhg <a href="javascript:;">删除</a></li>
<li>1234255535 <a href="javascript:;">删除</a></li>
<li>vmhmbmbmbh <a href="javascript:;">删除</a></li>
<li>6878987978 <a href="javascript:;">删除</a></li>
</ul> </div> </body>
 

javascript DOM 基础篇 01 : http://www.cnblogs.com/izhiniao/p/3698464.html

 
 
 
 
 

Javascript DOM 02 在<ul>中创建、删除 <li>的更多相关文章

  1. 多个ul中第一个li获取定位

    如果我们只是获取一个ul中的第一个li的话,那么我们可以这样写: $("ul li:first"); $("ul li").eq(0); $("ul ...

  2. 通过jquery获取ul中第一个li的属性

    当加载列表时,默认希望选中第一条.top_menu 为ul的ID 通过 $("#top_menu li:first") 就可以获取到 ul下第一个li标签.然后就可以利用 例如 修 ...

  3. 使用JavaScript操作DOM节点元素的常用方法(创建/删除/替换/复制等)

    getElementById(id)这是通过id来访问某一元素,最常用的之一,例:<html><body><div id="myid">test ...

  4. 关于JavaScript中的事件代理(例子:ul中无数的li上添加点击事件)

    面试题:一个ul中有一千个li,如何给这一千个li绑定一个鼠标点击事件,当鼠标点击时alert出这个li的内容和li的位置坐标xy. 看到这个题目,我们一般首先想到的思路是,for循环,遍历1000次 ...

  5. JavaScript DOM高级程序设计2.1创建可重用的对象--我要坚持到底!

    1.对象中包含什么 在javascript中,从函数到字符串实际上都是对象 继承 //创建一个person对象的实例 var penson={}; person.getName=function(){ ...

  6. jquery中怎么删除<ul>中的整个<li>包括节点

    .$('ul li').remove(); .$('ul li').each(function(){ $(this).remove(); }); .$("ul").find(&qu ...

  7. Html中怎么用CSS让ul中多个li标签不换行横排显示

    布局 通常有三种方式 { 1. position 2. float: left --> 其次是这个 3. block: inline-block  --> 他们推荐我用这个 } 具体描述 ...

  8. angular或者js如何确定选中ul中的哪几个li

    刚来新公司接到新的需求做一个知识库页面 红色的是单选    蓝色的是多选     这些都是需要传递到后台的 开始不知道如何解决  下班后在家想到一个很巧妙的办法  不多说上代码 箭头所指就是在li里写 ...

  9. JavaScript DOM 编程艺术·setInterval与setTimeout的动画实现解析

    先贴上moveElement()函数的大纲,为了方便观看,删了部分代码,完整版粘到文章后面. function moveElement(elementID,final_x,final_y,interv ...

随机推荐

  1. Android多线程断点续传下载

    这个月接到一个项目.要写一个像360助手一样的对于软件管理的APP:当中.遇到了一个问题:多线程断点下载 这个 ,因为之前没有写过这方面的应用功能.所以.不免要自学了. 然后就在各个昂站上收索并整理了 ...

  2. Android 性能优化 三 布局优化ViewStub标签的使用

    小黑与小白的故事,通过虚拟这两个人物进行一问一答的形式来共同学习ViewStub的使用 小白:Hi,小黑,ViewStub是什么?听说能够用来进行布局优化. 小黑:ViewStub 是一个隐藏的,不占 ...

  3. SQL中distinct的用法(转)

    原文:http://www.cnblogs.com/rainman/archive/2013/05/03/3058451.html 在表中,可能会包含重复值.这并不成问题,不过,有时您也许希望仅仅列出 ...

  4. JAVA知识的相关积累--用于自己以后查找

    基础: Properties类操作文件,主要是对配置文件的操作.java中的properties文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文本文件,文件的内容 ...

  5. 【转】Nginx+Tomcat搭建高性能负载均衡集群

    最近对负载均衡比较感兴趣,研究了公司的负载均衡的配置,用的是阿里的SLB,相当于不用运维,只需要在后台进行简单的配置就能完成Tomcat的负载均衡,索性在网上找了几篇文章去尝试搭建一个集群,然而很多都 ...

  6. kali linux

    1. Kali 2.0使用SSH进行远程登录  http://jingyan.baidu.com/article/eae07827a3e6bc1fec5485e3.html 一.配置SSH参数修改ss ...

  7. vmware能够ping通内网,上不了外网的解决方法

    一般这是由于里面的路由域名服务器没有配置好. issta@ubuntu:~$ ping www.baidu.com ping: unknown host www.baidu.com 先看一下地址解析器 ...

  8. STL之list(双向链表)

    一,概述 List将元素按顺序储存在链表中. 与向量(vectors)相比, 它允许快速的插入和删除,但是随机访问却比较慢. list 不仅是一个双向链表,而且是一个环状双向链表 二,使用 #incl ...

  9. django-celery

    在settings.py里installed_apps里添加 djcelery 需安装django-celery 在settings末端添加 import djcelery djcelery.setu ...

  10. 转:JS线程和JS阻塞页面加载的问题

    前几日写了一篇文章,介绍了js阻塞页面加载的问题.当时是通过例子来验证的.今天,我介绍一下浏览器内核,从原理上介绍一下js阻塞页面加载的原因. 浏览器的内核是多线程的,它们在内核制控下相互配合以保持同 ...