3 《锋利的jQuery》jQuery中的DOM操作
DOM操作分
(1)DOM Core(核心):document.geElementsByTagName("form");/ element.getAttribute("src");
(2)HTML-DOM:document.forms; / element.src;
(3)CSS-DOM:element.style.color="red";
查找节点:
查找$(ul li:eq(1)).text()文本值;
获取$("p").attr("title")的属性值;
创建节点:
var $li_1=$("<li></li>");
var $li_2=$("<li>香蕉</li>");
var $li_3=$("<li title='香蕉'>香蕉</li>"); //注意:title用的单引号
插入节点:
$(“p”).append(“<b>你好</b>”); 等价于 $(“<b>你好</b>”).appendTo(“p”); //内部的后面
$(“p”).prepend(“<b>你好</b>”); 等价于 $(“<b>你好</b>”).prependTo(“p”) //内部的前面
$(“p”).after(“<b>你好</b>”); 等价于 $(“<b>你好</b>”).insertAfter(“p”); //外部的后面
$(“p”).before(“<b>你好</b>”); 等价于 $(“<b>你好</b>”).insertBefore(“p”); //外部的前面
一种是创建新的HTML元素,然后插入。另一只也可以获取html元素,然后插入,即理解为移动节点。
比如:$("ul").prepend($("ul li:eq(2)"));
删除节点:
(1)remove();该节点本身以及后代被删除,但该方法返回值是一个指向已被删除的节点的引用。因此还可以继续使用。
var $li=$("ul li:eq(1)").remove(); $li.appendTo("ul");
(2)empty();清空节点,只是后代节点。
复制节点:
$("ul li").click(function(){ $(this).clone().appendTo("ul");})
被复制的li不具备点击复制行为,如果需要新元素也具有复制功能则:$(this).clone(true).appendTo("body");
替换节点:
$("p").replaceWith("<strong>你最不喜欢的水果是?</strong>");等价于 $("<strong>你最不喜欢的水果是?</strong>").replaceAll("p");
包裹节点:
(1)wrap(); //$("strong").wrap("<b></b>"); 每一个strong标签都被b标签包裹
(2)wrapAll(); // $("strong").wrapAll("<b></b>"); 所有strong标签被一个b标签包裹。如果中间并列其他标签元素的,也都移至一并包裹起来。
(3)wrapInner(); //$("strong").wrapInner("<b></b>"); 顺序是:strong标签>b标签>原strong标签里的子元素
属性操作:
var p_txt=$("p").attr("title");
$("p").attr("title","you title");
$("p").attr({"title":"you title","name":"test"});
删除属性:
$("p").removeAttr("title");
样式操作:
var p_class=$("p").attr("class");
$("p").attr("class","high"); //是替换样式而不是追加样式。
$("strong").addClass("high"); //追加样式。
$("strong").removeClass("high");
$("strong").removeClass("high").removeClass("another"); 等价于 $("strong").removeClass("high another");
$("strong").removeClass(); //将class的值全部删掉
$("strong").toggleClass("another");//切换样式
$("strong").hasClass("another"); //返回布尔值 也可以用 $("strong").is(".another");
html();
text(); //注意:相比html,text是纯文本值
val(); //值 value
val()方法还有另一个用处,就是它能使select(下拉列表框)、checkbox(多选框)和radio(单选框)相应的选项被选中。
下拉单选:$("#single").val("选择2号"); //$("#single option:eq(1)").attr("selected",true);
下拉多选:$("#multiple").val(["选择2号","选择3号"]);
$(":checkbox").val(["check2","check3"]);
$(":radio").val(["radio2"]);//$("[value=radio2]:radio").attr("checked",true);
注意使用val跟使用attr的区别:?
val方法是从最后一个选项往前读取,如果选项的value或者text中任意一项符合就会被选中。如:
<option value="选择2号">选择1号</option>
<option value="选择1号">选择2号</option>
无论是val("选择1号")还是val("选择2号");都会是后面一个option
3 《锋利的jQuery》jQuery中的DOM操作的更多相关文章
- jQuery中的DOM操作——《锋利的JQuery》
jQuery封装了大量DOM操作的API,极大提高了操作DOM节点的效率. 1.查找节点 通过我们上一节介绍了JQuery选择器,可以非常轻松地查找节点元素.不过,这时得到的是jQuery对象,只能使 ...
- 锋利的jQuery ——jQuery中的DOM操作(三)
一.DOM的操作分类 1>DOM Core 2>HTML-DOM 3>CSS-DOM 二.jQuery中的DOM操作 DOM树 ①查找节点 1)查找元素节点 利用jQuery ...
- 【Java EE 学习 32 下】【JQuery】【JQuey中的DOM操作】
一.JQuery中的DOM操作. 什么是DOM:DOM是一中和浏览器.平台.语言无关的接口,使用该接口可以轻松访问页面中所有的标准组件.DOM简称文档对象模型,是Document Oject Mode ...
- dom core,html dom,css dom,jquery 中的dom操作
前端开发中为达到某种目的,往往有很多方法:dom core,html dom,jquery; dom core/jquery主要通过函数调用的方式(getAttribute("属性名&quo ...
- jQuery中的DOM操作<思维导图>
DOM是Document Object Model的缩写,意思是文档对象模型.DOM是一种与浏览器.平台.语言无关的接口.使用该接口可以轻松地访问页面中所有的标准组件.简单来说,DOM解决了Netsc ...
- Jquery:jquery中的DOM操作<一>
之前两天学习了Jquery强大的选择器,今天学习了一部分Jquery对DOM的操作,下面我将把自己今天的成果分享给大家,那些菜鸟们,你们是否需要巩固之前所学? 首先需要知道,DOM操作分为3个方面:D ...
- jQuery中的DOM操作总结
jQuery中的DOM操作 DOM是Document Object Medel的缩写,它的意思是文档对象模型,根据W3C的官方说法,DOM是一种跟浏览器,平台以及语言都没有关系的一种规范,也就是一种接 ...
- jQuery中的DOM操作《思维导图》
首先,是关于jQuery中的DOM操作的<思维导图>,请点击这里:jQuery中的DOM操作 列表框的左右选项移动 <html> <head> <title& ...
- 第三章(jQuery中的DOM操作)
3.1 DOM 操作分类 ①DOM Core 包括(getElementById() , getElementsByTagName() , getAttribute() , setAttribute( ...
- JavaWeb学习笔记——jquery中的dom操作
jquery中的dom操作 废话不说:直接上例子: 1.添加节点-html页面 Append:向每个匹配的元素内部追加内容. <body> <ul id="city& ...
随机推荐
- C++面试试题汇总1
1.C和C++的主要区别是什么? 答:1.C++语言包括过程性语言部分和类部分,过程性语言部分与C并无本质的差别,类部分是C语言中所没有的,它是面向对象程序设计的主体. 2.程序设计方法上已从结构化程 ...
- java基础篇2之枚举
1.为什么要有枚举 问题:要定义星期几或者性别的变量,该怎么定义? 假设用1-7分别表示星期一到星期日,但有人可能会写成int weekday=0; 枚举就是要让某个类型的变量的取值只能为若干个固定值 ...
- 2017.2.21 Java中正则表达式的学习及示例
学习网站:菜鸟教程 http://www.runoob.com/java/java-regular-expressions.html 1 正则表达式的基本使用 (1)类 正则表达式并不仅限于某一种语言 ...
- 2016.7.12 去除mybatis-generator生成的class里的注释
用mybatis-generator自动生成代码会出现很多没必要的注释. 在配置文件里加上: 是否去除所有自动生成的文件的时间戳: 是否去除所有自动生成文件的注释: <commentGe ...
- iOS 应用内跳转到系统设置
在iOS5下面版本号使用下面方法:[IOS5.1+之后不能使用此方法.iOS8的跳转方法已找到见下方,iOS7的正在摸索,欢迎大家给出观点意见] 通过URL Scheme的方式打开内置的Setting ...
- 【秀优越(xie e)】原来出题也能够这么恶心。
通过邪恶的数据范围和数据限制居然能够把一道传统题出成题答2333. 诶毕竟内部互測,题目就不往上贴了. 特殊限制 - - - 题目作废.输出M行"Orz PoPoQQQ" - M ...
- pkav之当php懈垢windows通用上传缺陷
$pkav->publish{当php懈垢windows}剑心@xsser抛弃了我,但我却不能抛弃乌云..php懈垢windows,就像男人邂逅女人,早晚都会出问题的..感谢二哥@gainove ...
- 让div排成一行===>inline-block的兼容性
行内元素,排列在一行,但是不能设置它的width.height.margin.padding属性,即使设置了,也是不生效的. 快元素独占一行,如下的这个例子,before div.in div1.in ...
- HDOJ Oulipo 1686【KMP】
Oulipo Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Sub ...
- 自定义 Android 钟表盘,这一篇就够了
关于本文:本文原先在我的 CSDN 博客发布(由图片水印能发现),整理以往博客过程中,发现当时总结的很仔细,所以将其迁移到这里,希望对大家在自定义 View 方面,能有所帮助