jQuery学习(二)
操作DOM对象:
修改文本:
jQuery对象的text()和html()方法可以用来获取节点的文本内容和HTML文本。而当你给方法传入参数时,这两个方法可以被用于设置jQuery的文本内容。
还是以之前的代码为例:
<div id="test-div">
<p class="color-red">JavaScript</p>
<p class="color-green">Python</p>
<p class="color-red color-green">Erlang</p>
<p class="color-black" name="haskell">Haskell</p>
</div>
<script>
var langs = $('[class^=color]');
langs.each(function(){
var text = "lang_" + $(this).text();
$(this).text(text);
});
</script>
这里我们选出了全部的语言,并将每个语言的文本内容加个"lang_"前缀。
修改CSS:
jQuery可以通过css()和addClass()方法来修改DOM对象的CSS样式。
addClass()是直接将一个样式作为参数传入,为DOM设置样式,而css()方法则是将样式通过键值对的方式传入设置样式。
先定义样式:
.red_syle{
color:#ff0000;
}
</style>
对某一jQuery对象通过addClass()方法应用该样式。
langs.addClass('red_syle');
上述的编程语言将显示为红色。
langs.css('color','#0000ff');
编程语言将显示为蓝色。
注意,css()的优先级要高于addClass()。
显示和隐藏DOM对象,
hide()和show()方法可以用来隐藏和显示DOM对象。
toggle()方法用来切换显示和隐藏状态。
操作DOM节点的属性:attr(),removeAttr();
// <div id="test-div" name="Test" start="1">...</div>
<script>
var div = $('#test-div');
div.attr('data'); // undefined, 属性不存在
div.attr('name'); // 'Test'
div.attr('name', 'Hello'); // div的name属性变为'Hello'
div.removeAttr('name'); // 删除name属性
div.attr('name'); // undefined
</script>
jQuery还支持prop()方法。prop()和attr()类似,只是在个别行为上有所差异。
var radio = $('#test-radio');
radio.attr('checked'); // 'checked'
radio.prop('checked'); // true
对于表单元素,jQuery对象统一提供val()方法获取和设置对应的value属性,类似于text()方法。
操作DOM结构:
jQuery的append()可以增加新的DOM节点。
<div id="test-div">
<p class="color-red">JavaScript</p>
<p class="color-green">Python</p>
<p class="color-black" name="haskell">Haskell</p>
</div>
我们可以通过下列代码在div下增加一个子节点。
<script>
var div = $('#test-div');
div.append('<p class=color-black>Haskell</p>');
</script>
除了直接传入字符串构造一个节点外,我们可以直接传入一个DOM对象。
<script>
var h = $(document.createElement('p'));//自己构造DOM对象并转成jQuery对象
h.text('Haskell');//设置属性
h.attr('class','color-black');
var div = $('#test-div');
div.append(h);//添加节点
</script>
当然,可以获取页面中的DOM对象,在通过append()插入。这时,会先在原位置删除该节点,然后在指定位置插入。
prepend()和append()都是插入节点,只不过prepend是将节点插到最前,而append()是插到最后。
同级节点可以用after()和before()来插入。
删除DOM节点可以用remove()。如果一个jQuery对象中包括多个DOM对象,那么将全部被删除。
jQuery学习(二)的更多相关文章
- Jquery 学习二
一.事件编程 1.基本事件(以方法形式存在的) 基本语法: 原生Javascript代码中的事件绑定方式: DOM对象.事件 = 事件的处理程序 jQuery代码中的事件绑定方式: jQuery对 ...
- jquery 学习(二) - 属性操作
html代码 <div class="n1" zdy="z1">AAA <p>1111111</p> <input t ...
- jQuery学习(二) 自定义扩展函数
jQuery函数调用写法很优雅,在项目开发过程中,有需要自定义函数经常被使用到,将这些函数放置到项目ExtTool.js中,为了编码方式的统一,也希望这些自定义函数与jQuery函数一致的调用方式.在 ...
- JQuery学习二(获取元素控件并控制)
$(’#id‘).+function; 例如: 1 <head> 2 <title>JQuery</title> 3 <script src="js ...
- jQuery学习(二)——使用JQ完成页面定时弹出广告
1.JQuery效果 2.步骤分析: 第一步:引入jQuery相关的文件 第二步:书写页面加载函数 第三步:在页面加载函数中,获取显示广告图片的元素. 第四步:设置定时操作(显示广告图片的函数) 第五 ...
- jQuery学习二
1.id选择器: // 4.如果页面中多个元素id相同,jquery只会获取第一个id的jquery对象 var jquery = $('#name'); alert(jquery.val()); v ...
- JQuery学习二-字典操作
1. 数组中添加map var arr = []; var key = 'Jeremy'; var value = '!!!!' arr.push({ 'key': key, 'value': val ...
- jQuery学习-事件之绑定事件(二)
在上一篇<jQuery学习-事件之绑定事件(一)>我们了解了jQuery的add方法,今天我们来学习下dispatch方法: dispatch: function( event ) { ...
- jQuery学习之二 jQuery选择器
一.jQuery选择器是什么1.CSS选择器2.jQuery选择器 二.jQuery选择器的优势1.简洁的写法2.支持从CSS1到CSS3选择器3.完善的处理机制 传统js选择器假如要操作的元素不存 ...
随机推荐
- 为什么MySQL要用B+树?聊聊B+树与硬盘的前世今生【宇哥带你玩转MySQL 索引篇(二)】
为什么MySQL要用B+树?聊聊B+树与硬盘的前世今生 在上一节,我们聊到数据库为了让我们的查询加速,通过索引方式对数据进行冗余并排序,这样我们在使用时就可以在排好序的数据里进行快速的二分查找,使得查 ...
- MyBatis(十):Mybatis缓存的重要内容
本文是按照狂神说的教学视频学习的笔记,强力推荐,教学深入浅出一遍就懂!b站搜索狂神说或点击下面链接 https://space.bilibili.com/95256449?spm_id_from=33 ...
- linux 配置 python3 CGI
文章更新于:2020-03-04 注1:安装 python 参见: python 的安装使用和基本语法 注2:配置 web 环境参见: Windows&linux使用集成环境搭建 web 服务 ...
- 使用 python 进行身份证号校验
使用 python 代码进行身份证号校验 先说,还有很多可以优化的地方. 1.比如加入15位身份证号的校验,嗯哼,15位的好像没有校验,那就只能提取个出生年月日啥的了. 2.比如判断加入地址数据库,增 ...
- MySQL入门,第六部分,关系代数
关系代数是一种集合操作为基础过程化查询语言,特点:运算对象是关系,运算结果亦为关系 一.关系代数的特点 运算对象:关系 运算结果:关系 运算符:四类 集合运算符 专门的关系运算符 算术比较符 逻辑运算 ...
- Java正则表达式基础知识及实例说明
众所周知,在程序开发中,难免会遇到需要匹配.查找.替换.判断字符串的情况发生,而这些情况有时又比较复杂,如果用纯编码方式解决,往往会浪费程序员的时间及精力.因此,学习及使用正则表达式,便成了解决这一矛 ...
- web 应用 为啥 需要用到 tomcat 之类的 部署
首先了解C/s架构 比如我们常见的QQ,魔兽世界等 这种结构的程序是有服务器来提供服务的,客户端来使用服务 而B/S架构是这样的 它不需要安装客户端,只需要浏览器就可以了 例如QQ农场,这样对客户端的 ...
- Multism的简单使用(半加器和全加器)
- deepin右键发送博客
1. 概述 deepin系统上没有像样的笔记软件.为知笔记未提供deb打包的软件,很遗憾.商店提供的软件,界面停留在上个世纪了. 这个时候如果想通过笔记来分享到博客是一件非常困难的事情. 本篇博客就是 ...
- JavaWeb后端jsp之增删改查
今日主题:JavaWeb后端jsp之增删改查 实体类: Student.java: package cn.itcast.model.entity; public class Student { pri ...