代码可以在该网址测试:www.w3school.com.cn/tiy/t.asp?f=jquery_manipulation_detach_move

attr

使用函数来设置属性/值:函数参数为选择器的 index 值和当前属性值。

$(selector).attr(attribute,function(index,oldvalue))

示例代码

$(document).ready(function(){
$("button").click(function(){
$("img").attr("width",function(n,v){
return v-50;
});
});
});

设置多个属性/值对:

$(document).ready(function(){
$("button").click(function(){
$("img").attr({width:"50",height:"80"});
});
});

detach和remove:移除元素内容

detach() 方法移除匹配的元素,包括所有文本和子节点。

方法返回移除的元素,会保留该元素所有绑定的事件、附加的数据,因而可以在将来再使用这些匹配的元素。这一点与 remove() 不同,remove不会保留事件和数据,只保留元素。

示例代码:

<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("body").append($("p").detach());
});
$('p').click(function(){alert(1)})
});
</script>
</head>
<body>
<p>This is a paragraph.</p>
<button>移动 p 元素</button>
</body>
</html>

hasClass

检查被选元素是否包含指定的 class。

<p class="intro abc ef">This is a paragraph.</p>

检查是否有指定的几个class:结果为true

$(document).ready(function(){
$("button").click(function(){
alert($("p:first").hasClass("abc ef"));
});
});

html

获取:返回第一个匹配元素的内容。

设置:使用该方法设置一个值时,它会覆盖所有匹配元素的内容。

使用函数来设置元素内容:

$(selector).html(function(index,oldcontent))

示例代码:

<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("p").html(function(n){
return "这个 p 元素的 index 是:" + n;
});
});
});
</script>
</head>
<body>
<p>这是一个段落。</p>
<p>这是另一个段落。</p>
<button>改变 p 元素的内容</button>
</body>
</html>

操作结果:

几个穿插元素或者内容方法的区别

添加的内容可包含html标签的:

append(appendTo):向匹配元素集合中的每个元素结尾插入由参数指定的内容。

before:在每个匹配的元素之前插入内容。

prepend(prependTo):向匹配元素集合中的每个元素开头插入由参数指定的内容

操作元素与元素之间的位置,如果该方法用于已有元素,这些元素会被从当前位置移走“

insertAfter:把匹配的元素插入到另一个指定的元素集合的后面。

insertBefore:把匹配的元素插入到另一个指定的元素集合的前面。

$("button").click(function(){
$("<span>Hello world!</span>").insertAfter("p");
});

toggleClass:对设置或移除被选元素的一个或多个类进行切换。

该方法检查每个元素中指定的类。如果不存在则添加类,如果已设置则删除之。这就是所谓的切换效果。

不过,通过使用 "switch" 参数,您能够规定只删除或只添加类。

$(selector).toggleClass(class,switch)

使用函数来切换类:参数为选择器的 index 位置和当前的类。

$(selector).toggleClass(function(index,class),switch)

wrap和wrapAll:给元素增加父级标签

每个P标签外面包裹一个div

$(".btn1").click(function(){
$("p").wrap("<div></div>");
});

用一个div包裹所有p标签

$(document).ready(function(){
$(".btn1").click(function(){
$("p").wrapAll("<div></div>");
});
});

jq的dom操作的更多相关文章

  1. jQuery下拉框联动(JQ遍历&JQ中DOM操作)

    1.下载jQuery,并导入:https://blog.csdn.net/weixin_44718300/article/details/88746796 2.代码实现: <!DOCTYPE h ...

  2. vue怎么不通过dom操作获取dom节点

    今天写一个公众号的项目,写了一个vue的搜索组件,点击搜索框时,背景出现一个遮罩,代码结构如下: template:`<div class="searchBar-div"&g ...

  3. 第3章 jQuery的DOM操作

    一.  DOM 分为DOM核心,HTML-DOM和CSS-DOM 1.DOM核心 不专属与javascript. 获取对象:document.getElementsByTagName('div') 获 ...

  4. jQuery DOM操作之结点转移复制

    jQuery DOM操作之结点转移复制 $('div').append($('p'))这样即可把p标签移动到div标签里 $('div').append( $('p').html() )是把p标签里的 ...

  5. 第25篇 jQuer快速学习(上)---选择器和DOM操作

    这个文章经历的时间比较长,不是因为jQuery比较难,而是东西比较多,真心是个体力活.所以本来想把jQuery做成一篇去写,但由于写的时候发现jQuery发现写成一篇的话过于长,对于阅读起来也不是一个 ...

  6. Js之浅谈dom操作

    JavaScript之浅谈dom操作 1.理解dom: DOM(Document Object Model ,文档对象模型)一种独立于语言,用于操作xml,html文档的应用编程接口. 怎么说,我从两 ...

  7. 在没有DOM操作的日子里,我是怎么熬过来的(上)

    前言 在我动笔写这篇文章的时候,我刚刚从我的项目中删除了最后一行JQuery代码.至于我为何要这么做,请听闰土娓娓道来.前几年我还在想,假如有一天,前端世界里不能再直接操作dom了,我该怎么办?没想到 ...

  8. jQuery系列 第七章 jQuery框架DOM操作

    第七章 jQuery框架的选择器 jQuery框架继承和优化了JavaScript访问DOM对象的特性,我们使用jQuery框架提供的api可以更加方便的操作DOM对象. 7.1 创建DOM节点 使用 ...

  9. JQuery DOM操作 、属性和CSS样式操作、其他函数

    DOM操作 1.在div1内部最后追加一个节点 $("#div1").append("<img src='../01-HTML基本标签/img/Male.gif'/ ...

随机推荐

  1. win32-api: 让 static 控件中的水平横行,垂直居中。

    CreateWindowEx(....., SS_CENTER | SS_CENTERIMAGE); SS_CENTER  能让文字水平居中. SS_CENTERIMAGE 能让文字垂直居中. htt ...

  2. 关于xshell 无法连接虚拟机之我的解决方案

    先说一下我碰到的问题 1,虚拟机配置网络后,并且选的模式是桥接模式,虚拟机中可以访问外网,宿主机中也可以访问外网,虚拟机中可以ping通宿主机,但是宿主机无法ping通虚拟机 解决: 我的原因:我会出 ...

  3. shell 脚本不能执行多条?何解

    #!/bin/sh ps -e | grep svnserve | awk '{print $1}'  | xargs kill -9 svnserve -d -r /projects/svn --c ...

  4. (二叉树 BFS) leetcode513. Find Bottom Left Tree Value

    Given a binary tree, find the leftmost value in the last row of the tree. Example 1: Input: 2 / \ 1 ...

  5. vue实现购物车和地址选配(二)

    参考文献: vue官网: vue.js 效果展示:全选和取消全选,计算总金额 项目源代码:https://github.com/4561231/hello_world 项目核心代码实现及踩坑 1.全选 ...

  6. 【优秀的Sketch插件】PaintCode for Sketch for Mac 1.1

    [简介] PaintCode for Sketch 是一款结合了PaintCode和Sketch两款软件强大功能的插件,今天和大家分享最新的1.1版本,支持Sketch 40+版本,这个插件能够让你的 ...

  7. pt-kill 用法记录

    pt-kill 用法记录 # 参考资料Percona-Toolkit系列之pt-kill杀会话利器http://www.fordba.com/percona-toolkit-pt-kill.html ...

  8. Kafka各个版本差异汇总

    Kafka各个版本差异汇总   从0.8.x,0.9.x,0.10.0.x,0.10.1.x,0.10.2.x,0.11.0.x,1.0.x或1.1.x升级到2.0.0 Kafka 2.0.0引入了线 ...

  9. CentOS 安装Python3、pip3

    https://ehlxr.me/2017/01/07/CentOS-7-%E5%AE%89%E8%A3%85-Python3%E3%80%81pip3/ CentOS 7 默认安装了 Python ...

  10. CentOS7 下 Hadoop 分布式部署

    Hadoop 服务划分 使用三台节点,集群部署规划如下 服务\主机 hadoop1 hadoop2 hadoop3 HDFS NameNode DataNode DataNode SecondaryN ...