JQuery DOM操作:设置内容&属性&添加元素&插入元素&包裹&克隆&移除&替换
JQuery text()、html()、val()
- $(elem).text(str):添加文本内容str到elem类型元素,返回jQuery对象
- $(elem).text():返回第一个elem标签内的文本内容
- $(elem).html("<a href='##'>a标签</a>"):添加html内容到elem类型元素,返回jQuery对象
- $(elem).html(""):返回第一个elem标签内的html内容
- $("input").val(str):给所有input标签设置值为str,返回jQuery对象
- $("input").val():返回第一个input标签的value
JQuery each()遍历
遍历数组:
var arr = ["a","b","c","d","e"];
$.each(arr,function(index,item){
console.log(item);
});
遍历对象
var data = {
a:1,b:2,c:3
};
$.each(data,function(index,item){
console.log(index,item);
});
JQuery attr()、prop()、data()
- attr():给标签设置一个或者多个属性
- prop():给JQuery的DOM元素设置属性
- data():给JQuery对象的引用增加属性,不设是DOM属性
- 标签设置和引用设置属性的方法,DOM获取不到
attr设置标签属性
设置属性
$("div").attr("ab","3");
console.log($("div").attr("ab"));//
console.log(document.querySelector("div").ab);//undefined
$("div").attr({
ab:1,
cd:2,
ef:3
});
$("div").attr({
ab:function(index,item){
return index + 10;
},
cd:function(index,item){
return index + 100;
},
ef:function(index,item){
return index + 1000;
}
});
删除某个属性:
prop设置JQuery对象DOM属性
$("div").prop("ab",3);
data设置JQuery引用属性
//data
$("div").data("ab","3");
console.log($("div").eq(1).data("ab"));
添加元素:
var div1 = $("<div></div>");
$("body").append(div1);
div1.appendTo("body");
插入元素到父元素的最前:
$("body").prepend("<div>i am fst</div>");
$("<div>i am fst</div>").prependTo("body");
插入某元素的后面,如果有多个就插入到第一个后面
$(".div1").after("<div></div>");
$("<div></div>").insertAfter(".div1");
插入到某个元素的前面
$(".div1").before("<div></div>");
$(".span1").before("<div></div>");
$("<div></div>").insertBefore(".span1");
包裹与反包裹,外裹和内置
//给所有span外面包裹一层div
$("span").wrap("<div></div>");
//删除父容器取消包裹
$("span").unwrap(); var arr = ["http://www.qq.com","http://www.taobao.com","http://www.jd.com","http://www.163.com"];
$("span").wrap(function(index,item){
return `<a href='${arr[index]}'></a>`;
}); $("span").unwrap(); //内置,在span的内容里面包裹一个a标签
$("span").wrapInner("<a href='#'></a>");
clone,浅复制与深复制,JQuery中所有clone(true)都是深复制,clone(false)无法复制事件
("<div><span></span></div>").appendTo("body").css({
width: 50,
height: 50,
backgroundColor: "red"
}).on("click",function(){
$(this).css({
backgroundColor:"green"
});
}).clone(true).appendTo("body")//clonefalse浅复制,无法复制点击事件,clonetrue深复制可以
删除元素
$(this).detach():删除元素但不删除事件,下次添加的时候事件依然存在
$(this).remove():删除元素并且删除事件
var divs = $("<div></div>").appendTo("body").css({
width: 50,
height: 50,
backgroundColor: "red"
}).on("click", function () {
// $(this).remove();删除元素与事件
$(this).detach();//删除元素但不删除事件,下次添加的时候依然有
$("<button>按钮</button>").appendTo("body").on("click",function(){
divs.appendTo("body");
});
});
替换元素
$("<span></span>").replaceAll("div");//新.replaceAll.旧
$("div").replaceWith("<span></span>");//旧.替换.新
JQuery DOM操作:设置内容&属性&添加元素&插入元素&包裹&克隆&移除&替换的更多相关文章
- 【学亮IT手记】jQuery DOM操作-获取内容和属性
jQuery拥有可操作HTML元素和属性的强大方法. 其中非常重要的部分就是操作DOM的能力. DOM--文档对象模型. <!DOCTYPE html> <html> < ...
- JQuery DOM操作(属性操作/样式操作/文档过滤)
jQuery——入门(三)JQuery DOM操作(属性操作/样式操作/文档过滤) 一.DOM属性操作 1.属性 (1).attr() 方法 语法:$(selector).attr(name|prop ...
- jQuery DOM操作之结点转移复制
jQuery DOM操作之结点转移复制 $('div').append($('p'))这样即可把p标签移动到div标签里 $('div').append( $('p').html() )是把p标签里的 ...
- SQL写操作 设置内容 (数组转字符串)
SQL写操作 设置内容 (数组转字符串) SQL set内容 SQL操作数组转字符串 SQL写操作 set内容 (数组转字符串) [ 封装方法 ] function getSqlSet( $data ...
- JQuery DOM操作 、属性和CSS样式操作、其他函数
DOM操作 1.在div1内部最后追加一个节点 $("#div1").append("<img src='../01-HTML基本标签/img/Male.gif'/ ...
- Query节点操作,jQuery插入节点,jQuery删除节点,jQuery Dom操作
一.创建节点 var box = $('<div>节点</div>'); //创建一个节点,或者var box = "<div>节点</div> ...
- jQuery节点操作,jQuery插入节点,jQuery删除节点,jQuery Dom操作
一.创建节点 1 var box = $('<div>节点</div>'); //创建一个节点,或者var box = "<div>节点</div& ...
- jQuery DOM操作
对节点的操作 查找节点 查找节点可以直接利用jQuery选择器来完成,非常便利. 插入节点 jQuery提供了8种插入节点的方法. 序号 方法 描述 实例 1 append() 向每个匹配的元素内部追 ...
- JQuery -- Dom操作, 示例代码
1.内部插入节点 * append(content) :向每个匹配的元素的内部的结尾处追加内容 * appendTo(content) :将每个匹配的元素追加到指定的元素中的内部结尾处 * ...
随机推荐
- myeclipse2017配置tomcat7.0
具体配置参考这篇博客:https://www.cnblogs.com/alibaba-inc/p/9249135.html 期间可能会碰到这样一个问题,"The server does no ...
- 多数据源切换-Druid
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/qq_37279783/article/d ...
- Verilog 编写规范
在学习Python时,作者有一句话对我影响很大.作者希望我们在学习编写程序的时候注意一些业内约定的规范.在内行人眼中,你的编写格式,就已经暴露了你的程度.学习verilog也是一样的道理,一段好的ve ...
- liunx详解-1
一 文件系统 根目录结构 root root用户家目录 home 其他用户家目录 etc 系统配置目录 bin sbin 可执行二进制文件目录,sbin只有root可访问 opt 软件安装目录 usr ...
- 解决VS2017中出现:This function or variable may be unsafe
解决办法:项目名称-右键属性-C/C++ - 预处理器 -预处理器定义 - 右侧下拉框中选择"编辑"- 在第一个编辑框中添加_CRT_SECURE_NO_WARNINGS
- 09day 命令提示符优化及yum优化
export PS1='\[\e[32;1m\][\u@\h \W]\$ \[\e[0m\]' 设置颜色 内容 结束 export PS1='\[\e[30;1m\][\u@\h \W]\$ \[\e ...
- Windows使用nmake和Makefile编译c++
今天在本地看到一个lsd_1.6的源文件,不知道什么时候看LSD时下载的,里面只有一个Makefile和源文件. 想到在Linux下可以只用一个make命令就可以得到可执行程序,在Windows下是不 ...
- Python学习(七)——匿名函数、map函数、filter函数、reduce函数与其他内置函数
匿名函数 lambda x: x + 1 # lambda:定义匿名函数的关键字 # x:形参 # x+1:程序处理逻辑 fun = lambda x: x + 1 print(fun(5)) #6 ...
- JAXB "有两个名为 "**" 的属性,类的两个属性具有相同名称 "**""解决方案
这里说的名称冲突指的是: JavaBean 属性名称与字段名称之间的名称冲突.在pojo类中的setter和getter方法会导致运行报错:Exception in thread "main ...
- 消息队列(六)--- RocketMQ-消息消费
文章部分图片来自参考资料,侵删 概述 我们从前面的发送流程知道某个主题的消息到了broker 的 messageque 里,假如让我们来设计一个消息队列的消费者过程,那么多个消费者应该如何消费数量较少 ...