js,jQuery操作节点,获取、设置属性,操作class属性

2 篇文章 0 订阅

1,创建元素节点:

js:   document.createElement("div")

jQuery:  $("<div></div>")

2,创建文本节点并添加到某个元素节点:

js:   var e1 =  document.createTextNode("text content"); // 创建文本节点

      var e2 = document.createElement("p");  // 创建元素节点

       e2.appendChild(e1);

jQuery:  var e3 = $("<p>text content</p>");

3,复制节点:

js:   var newElement = e3.cloneNode(true);

   括号内些true或false,区别:true:克隆整个‘<p>text content</p>’ 节点;false:  克隆 ‘<p></p>’ ,不克隆里面的文字

jQuery:  var newElement2 = $("#e3").clone(true); // 避免id重复

4,插入节点:

js:   节点末尾添加新的子节点:

El.appendChild(newNode); // El 是一个父元素

      节点前面添加新的子节点: 

El.insertBefore(newNode,targetNode); // targetNode 是父元素中的某个子元素;

jquery:  在匹配元素子节点列表末尾添加子节点:(内部)

  $("#el").append("<p>Hello world</p>");

            把匹配的元素节点添加到目标元素节点内部结尾:(内部)

$("<p>hello world</p>").appendTo("#el");

在匹配元素元素子节点列表开头添加内容:(内部)

$("#el").prepend("<p>hello world</p>");

把匹配的元素添加到目标元素子节点列表开头:(内部)

$("<p>hello world</p>").prependTo("#el");

  •  在匹配元素之前添加目标内容
     
     $('#El').before('<p>Hello World.</p>');
     
    把匹配元素添加到目标元素之前
     
     $('<p>Hello World.</p>').insertBefore('#El');
     
    在匹配元素之后添加目标内容
     
     $('#El').after('<p>Hello World.</p>');
     
    把匹配元素添加到目标元素之后
     
     $('<p>Hello World.</p>').insertAfter('#El'); 

5,删除节点:

js:  el.parentNode.removeChild(el)

jQuery:  $("#el").remove()

6,替换节点:

js:  el.replaceChild(newNode,oldNode);  // oldNode必须是一个真实存在的子节点;

jquery: $("p").replaceWith("<p>hello world</p>")

7,获取、设置元素属性

js:  设置属性:   .setAttribute("属性",“属性值”)

      获取属性:  .getAttribute("属性")

jquery:   设置属性:   .attr("属性",“值”)

              获取属性:  .attr("属性")

              可以用prop读取dom原生属性:

$("#el").prop("name","hello"); // 赋值

$("#el").prop("name"); // 取值

8,操作元素的class属性:

JS:
<!-- span元素原有class = "test" -->
<span class="test"></span>

var ele = document.getElementByClassName("test")

方法一,直接赋值,会覆盖原有的值:ele.className = "test1"

方法二:利用className为字符串的属性,可以在原有的class属性后面添加或删除class;

              ele.className += " test2";  // 记得加空格;

方法三:利用classList 属性的add(),remove()方法添加或者删除属性值:

ele.classList.add("test3");   ele.classList.remove("test");

jQuery:

<!-- span元素原有class = "test" -->
<span class="test"></span>

$("span").addClass(“test1 test2");// addClass()   添加类属性值

$("span").removeClass("test1"); //  removeClass()   删除类属性值

$("span").toggleClass("test3");  // 切换类属性值;点击一次添加类属性值,再点击一次删除类属性值;

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值