DOM操作增删改查

通过 JavaScript,您可以重构整个HTML文档。您可以添加、移除、改变或重排页面上的项目。要改变页面的某个东西,JavaScript就需要对HTML文档中所有元素进行访问的入口。这个入口,连同对HTML 元素进行添加、移动、改变或移除的方法和属性,都是通过文档对象模型来获得的(DOM)。

  • 整个文档是一个文档节点 
  • 每个 HTML 标签是一个元素节点 
  • 包含在 HTML 元素中的文本是文本节点 
  • 每一个 HTML 属性是一个属性节点 
  • 注释属于注释节点

原生方式

1、获取

getElementById()、getElementsByTagName()、getElementsByName()、getAttribute()、setAttribute()、removeAttribute()

 

jQuery方式

一、节点的操作

1.查找节点:

var $var_1=$("htmltype");   //这句话就是获取所有htmltype节点

如:var $ul_1=$("ul");

2.创建并追加节点:

var $var_1=$("<htmltype>");//这句话是创建一个节点

$("htmltype2").append($var_1) ; //这句话是把节点插入所有htmltype2节点中

例子:var $li_1=$("<li  title="title1">香蕉</li>");

         $("ul").append($li_1);

其中插入方法有以下几种:

  • append() 把B追加到A内部(所有的A元素,以下类似)
  • appendTo() 把A追加到B内部
  • prepend() 把B追加到A内部的内容前
  • prependTo() 把A追加到B的内容前
  • after() 在A后追加B
  • insertAfter() 在A前追加B
  • before() 在A前追加B
  • insertBefore()在A后追加B

例子:$("ul").append("<li>你好</li>");//在ul内部追加li

         $("<li>你好</li>").appendTo("ul");//在ul内部追加li

 

3.删除节点

  • remove() 删除该元素
  • empty() 清空节点,包括后代节点

例子:$("ul  li:eq[1]").remove(); //获取ul中的第二个li并删除

        $("ul  li").remove(“li[title="菠萝"]”);//删除ul中li元素属性title="菠萝"的元素

 

4.复制节点

  • clone();//复制本节点

例子:$("ul  li:eq[1]").clone().appenTo("ul");//复制并追加到ul中,只复制是不会显示出来的

 

5.替换节点

  • replaceWith();//将B替换所有A
  • replaceAll();//将A替换所有B

6.包裹节点

  • warpAll();//用B包裹A
  • warpInner();//用B包裹A的内容

 

二.属性操作

1.获取和设置属性

var $var_1=$("p");//这句话是获取节点P

 var $p_1=$var_1.attr("title");//获取节点P的title属性

var $p_2=$var_1.attr("title","你好");//设置节点P的title属性为"你好"

2.删除属性

$("p").removeAttr("title");//删除节点P的Title属性

三.样式操作

1.获取和设置样式

var $var_class=$("p").attr("class");//获取节点P的class属性

$("p").attr("class","class1");设置节点P的class属性为样式表类class1

2.追加样式

  • addClass() 添加样式到A

例子:$("p").addClass("another");添加样式表类another类到P

3.移除样式

  • removeClass() 移除类

4.切换样式

  • toggleClass() 切换clss属性类为新的类

5.判断某个样式是否存在

  • hasClass()

四.内容的操作

  • html() 该方法获取html元素的内容,如:var var1=$("p").html();//获取P元素内的内容
  • text() 获取或设置某个html元素的内容
  • val() 获取元素的Value值
  • children() 获取html元素的所有子节点
  • next()  获取html元素后紧邻的同辈节点
  • prev() 获取html元素前紧邻的同辈节点
  • siblings() 获取html元素前后紧邻的同辈节点

五.CSS-DOM技术

  • css("属性","值") 设置元素css某个属性的值,如:$("p").css("color","red");//设置P的css属性{color:red;} 
posted @ 2017-02-02 13:13  Focousss  阅读(1583)  评论(0编辑  收藏  举报