jQuery 使用手册(二)


Posted in Javascript onSeptember 23, 2009

二:DOM操作
属性
我们以<img id="a" scr="5.jpg"/>为例,在原始的javascript里面可以用var o=document.getElementById('a')取的id为a的节点对象,在用o.src来取得或修改该节点的scr属性,在jQuery 里$("#a")将得到jQuery对象[ <img id="a" scr="5.jpg"/> ],然后可以用jQuery提供的很多方法来进行操作,如$("#a").scr()将得到5.jpg,$("#a").scr("1.jpg")将该对象src属性改为1,jpg。下面我们来讲jQuery提供的众多jQuery方法,方便大家快速对DOM对象进行操作
herf()   herf(val)
说明:对jQuery对象属性herf的操作。
例子:
未执行jQuery前

<href="1.htm" id="test" onClick="jq()">jQuery</a>

jQuery代码及功能:

function jq(){
   alert($(
"#test").href());
   $(
"#test").href("2.html");
}

运行:先弹出对话框显示id为test的连接url,在将其url改为2.html,当弹出对话框后会看到转向到2.html
同理,jQuery还提供类似的其他方法,大家可以分别试验一下:
herf()  herf(val)   html()  html(val)   id()  id (val)  name()  name (val)   rel()  rel (val)
src()    src (val)   title()  title (val)   val()  val(val)

操作
after(html)  在匹配元素后插入一段html

<href="#" id="test" onClick="jq()">jQuery</a>
jQuery代码及功能:
function jq(){  
       $(
"#test").after("<b>Hello</b>");  
}
执行后相当于:
<href="#" id="test" onClick="jq()">jQuery</a><b>Hello</b>

after(elem)  after(elems)  将指定对象elem或对象组elems插入到在匹配元素后
jQuery 使用手册(二)<id="test">after</p><href="#" onClick="jq()">jQuery</a>
jQuery代码及功能
function jq(){  
     $(
"a").after($("#test"));  
}
执行后相当于
jQuery 使用手册(二)<href="#" onClick="jq()">jQuery</a><id="test">after</p>

append(html)在匹配元素内部,且末尾插入指定html
<href="#" id="test" onClick="jq()">jQuery</a>
jQuery代码及功能:
function jq(){ 
     $("#test").append("
<b>Hello</b>");  
}
执行后相当于
<href="#" onClick="jq()">jQuery<b>Hello</b></a>
同理还有append(elem)  append(elems) before(html) before(elem) before(elems)请执行参照append和after的方来测试、理解!

appendTo(expr)  与append(elem)相反

jQuery 使用手册(二)<id="test">after</p><href="#" onClick="jq()">jQuery</a>
jQuery代码及功能
function jq(){  
      $(
"a"). appendTo ($("#test"));  
}
执行后相当于
<id="test">after<href="#" onClick="jq()">jQuery</a> </p>

clone() 复制一个jQuery对象
<id="test">after</p><href="#" onClick="jq()">jQuery</a>
jQuery代码及功能:
function jq(){  
     $(
"#test").clone().appendTo($("a"));  
}
复制$("#test")然后插入到<a>后,执行后相当于
<id="test">after</p><href="#" onClick="jq()">jQuery</a><id="test">after</p>

empty() 删除匹配对象的所有子节点
jQuery 使用手册(二)<div id="test">
jQuery 使用手册(二)  
<span>span</span>
jQuery 使用手册(二)  
<p>after</p>
jQuery 使用手册(二)
</div>
jQuery 使用手册(二)
<href="#" onClick="jq()">jQuery</a>
jQuery代码及功能:
function jq(){  
    $(
"#test").empty();  
}
执行后相当于
<div id="test"></div><href="#" onClick="jq()">jQuery</a>

insertAfter(expr)   insertBefore(expr)
     按照官方的解释和我的几个简单测试insertAfter(expr)相当于before(elem),insertBefore(expr)相当于after (elem)

prepend (html)  prepend (elem)  prepend (elems)   在匹配元素的内部且开始出插入
通过下面例子区分append(elem)  appendTo(expr)  prepend (elem)

<id="a">p</p>
<div>div</div>
执行$("#a").append($("div")) 后相当于
<id="a">

  

<div>div</div>
</p>
执行$("#a").appendTo($("div")) 后 相当于
<div>
   div
   
<id="a">p</p>
</div>
执行$("#a").prepend ($("div")) 后 相当于
<id="a">
   
<div>div</div></p>

remove()  删除匹配对象
注意区分empty(),empty()移出匹配对象的子节点,remove(),移出匹配对象

wrap(htm) 将匹配对象包含在给出的html代码内

<p>Test Paragraph.</p> <href="#" onClick="jq()">jQuery</a>
jQuery代码及功能:
function jq(){  
      $(
"p").wrap("<div class='wrap'></div>"); 
}
执行后相当于
<div class='wrap'><p>Test Paragraph.</p></div>

wrap(elem) 将匹配对象包含在给出的对象内
<p>Test Paragraph.</p><div id="content"></div>
<href="#" onClick="jq()">jQuery</a>
jQuery代码及功能:
function jq(){  
      $(
"p"
).wrap( document.getElementById('content') );
}

执行后相当于

<div id="content"><p>Test Paragraph.</p></div>

遍历、组合
add(expr)  在原对象的基础上在附加符合指定表达式的jquery对象

<p>Hello</p><p><span>Hello Again</span></p>
<href="#" onClick="jq()">jQuery</a>
jQuery代码及功能:
function jq(){
     
var f=$("p").add("span");    
     
for(var i=0;i < $(f).size();i++){
     alert($(f).eq(i).html());}
}
执行$("p")得到匹配<p>的对象,有两个,add("span")是在("p")的基础上加上匹配<span >的对象,所有一共有3个,从上面的函数运行结果可以看到$("p").add("span")是3个对象的集合,分别是 [<p>Hello</p>],[<p><span>Hello Again</span></p>],[<span>Hello Again</span>]。

add(el)  在匹配对象的基础上在附加指定的dom元素。
        $("p").add(document.getElementById("a"));

add(els)  在匹配对象的基础上在附加指定的一组对象,els是一个数组

jQuery 使用手册(二)<p>Hello</p><p><span>Hello Again</span></p>
jQuery代码及功能:
function jq(){
     
var f=$("p").add([document.getElementById("a"), document.getElementById("b")])
     
for(var i=0;i < $(f).size();i++){
             alert($(f).eq(i).html());}
}
注意els是一个数组,这里的[ ]不能漏掉。

ancestors ()  一依次以匹配结点的父节点的内容为对象,根节点除外(有点不好理解,看看下面例子就明白了)

<div>
    
<p>one</p>
    
<span>
    
<u>two</u>
    
</span>
</div>
jQuery代码及功能:
function jq(){
     
var f= $("u").ancestors();
     
for(var i=0;i < $(f).size();i++){
      alert($(f).eq(i).html());}
}
第一个对象是以<u>的父节点的内容为对象,[ <u>two</u> ]
第一个对象是以<u>的父节点的父节点(div)的内容为对象,[<p>one</p><span><u>two</u></span> ]
一般一个文档还有<body>和<html>,依次类推下去。

ancestors (expr)  在ancestors()的基础上之取符合表达式的对象
如上各例子讲var f改为var f= $("u").ancestors(“div”),则只返回一个对象:
[ <p>one</p><span><u>two</u></span>  ]

children()  返回匹配对象的子介点

<p>one</p>
<div id="ch">   
     
<span>two</span>
</div>
jQuery代码及功能:
function jq(){
    alert($(
"#ch").children().html());
}
$("#ch").children()得到对象[ <span>two</span> ].所以.html()的结果是”two”

children(expr)  返回匹配对象的子介点中符合表达式的节点

<div id="ch">   
      
<span>two</span>
      
<span id="sp">three</span>
</div>
jQuery代码及功能
function jq(){
    alert($(
"#ch").children(“#sp”).html());
}
$("#ch").children()得到对象[<span>two</span><span id="sp">three</span> ].
$("#ch").children(“#sp”)过滤得到[<span id="sp">three</span> ]

parent ()  parent (expr)取匹配对象父节点的。参照children帮助理解

contains(str)  返回匹配对象中包含字符串str的对象

jQuery 使用手册(二)<p>This is just a test.</p><p>So is this</p>
jQuery代码及功能:
function jq(){
    alert($(
"p").contains("test").html());
}
$("p")得到两个对象,而包含字符串”test”只有一个。所有$("p").contains("test")返回 [ <p>This is just a test.</p> ]

end() 结束操作,返回到匹配元素清单上操作前的状态.

filter(expr)   filter(exprs)   过滤现实匹配符合表达式的对象 exprs为数组,注意添加“[ ]”

<p>Hello</p><p>Hello Again</p><class="selected">And Again</p>
jQuery代码及功能:
function jq(){
    alert($(
"p").filter(".selected").html())
}
$("p")得到三个对象,$("p").contains("test")只返回class为selected的对象。

find(expr)  在匹配的对象中继续查找符合表达式的对象

<p>Hello</p><id="a">Hello Again</p><class="selected">And Again</p>
Query代码及功能:
function jq(){
    alert($(
"p").find("#a").html())
}
在$("p")对象中查找id为a的对象。

is(expr)  判断对象是否符合表达式,返回boolen值

<p>Hello</p><id="a">Hello Again</p><class="selected">And Again</p>
Query代码及功能:
function jq(){
    alert($(
"#a").is("p"));
}
在$("#a ")是否符合jquery表达式。
大家可以用$("#a").is("div");  ("#a").is("#a")多来测试一下

next()  next(expr)  返回匹配对象剩余的兄弟节点

<p>Hello</p><id="a">Hello Again</p><class="selected">And Again</p>
jQuery代码及功能
function jq(){
        alert($(
"p").next().html());
        alert($(
"p").next(".selected").html());
}
$("p").next()返回 [ <p id="a">Hello Again</p> , <p class="selected">And Again</p> ]两个对象
$("p").next(".selected)只返回 [<p class="selected">And Again</p> ]一个对象

prev ()  prev (expr)  参照next理解

not(el)  not(expr)  从jQuery对象中移出匹配的对象,el为dom元素,expr为jQuery表达式。

<p>one</p><id="a">two</p>
<href="#" onclick="js()">jQuery</a>
jQuery代码及功能:
function js(){
     alert($(
"p").not(document.getElementById("a")).html());
     alert($(
"p").not(“#a”).html());
}
$("p")由两个对象,排除后的对象为[<p>one</p> ]

siblings ()  siblings (expr)  jquery匹配对象中其它兄弟级别的对象

<p>one</p>
<div>
  
<id="a">two</p>
</div>
<href="#" onclick="js()">jQuery</a>
jQuery代码及功能:
function js(){
       alert($(
"div").siblings().eq(1).html());
}
$("div").siblings()的结果实返回两个对象[<p>one</p>,<a href="#" onclick="js()">jQuery</a> ]
alert($("div").siblings(“a”)返回一个对象[<a href="#" onclick="js()">jQuery</a> ]

其他
addClass(class)   为匹配对象添加一个class样式
removeClass (class)   将第一个匹配对象的某个class样式移出

attr (name)   获取第一个匹配对象的属性

<img src="test.jpg"/><href="#" onclick="js()">jQuery</a> 
jQuery代码及功能:
function js(){
     alert($(
"img").attr("src"));
}
返回test.jpg

attr (prop)   为第一个匹配对象的设置属性,prop为hash对象,用于为某对象批量添加众多属性

<img/><href="#" onclick="js()">jQuery</a>
jQuery代码及功能:
function js(){
     $(
"img").attr({ src: "test.jpg", alt: "Test Image" }); 
}
运行结果相当于<img src="test.jpg" alt="Test Image"/>

attr (key,value)   为第一个匹配对象的设置属性,key为属性名,value为属性值

<img/><a href="#" onclick="js()">jQuery</a>
jQuery代码及功能
function js(){
     $(
"img").attr(“src”,”test.jpg”); 
}
运行结果相当于<img src="test.jpg"/>

removeAttr (name)   将第一个匹配对象的某个属性移出

<img alt="test"/><href="#" onclick="js()">jQuery</a>
jQuery代码及功能:
function js(){
     $(
"img"). removeAttr("alt"); 
}
运行结果相当于<img />

toggleClass (class)   将当前对象添加一个样式,不是当前对象则移出此样式,返回的是处理后的对象

<p>Hello</p><class="selected">Hello Again</p><href="#" onclick="js()">jQuery</a>
$("p")的结果是返回对象 [<p>Hello</p>,<p class="selected">Hello Again</p> ]
$("p").toggleClass("selected")的结果是实返回对象 [ <p class="selected">Hello</p>, <p>Hello Again</p> ] 
Javascript 相关文章推荐
Javascript 兼容firefox的一些问题
May 21 Javascript
ExtJS 2.0 GridPanel基本表格简明教程
May 25 Javascript
jquery监控数据是否变化(修正版)
Apr 12 Javascript
jquery的ajaxSubmit()异步上传图片并保存表单数据演示代码
Jun 04 Javascript
Underscore源码分析
Dec 30 Javascript
javascript实现瀑布流加载图片原理
Feb 02 Javascript
Bootstrap 按钮样式与使用代码详解
Dec 09 Javascript
layui radio点击事件实现input显示和隐藏的例子
Sep 02 Javascript
Vue使用NProgress的操作过程解析
Oct 10 Javascript
微信小程序实现侧边分类栏
Oct 21 Javascript
JS localStorage存储对象,sessionStorage存储数组对象操作示例
Feb 15 Javascript
Vue实现圆环进度条的示例
Feb 06 Vue.js
jQuery 使用手册(一)
Sep 23 #Javascript
JavaScript 变量命名规则
Sep 23 #Javascript
js 获取中文拼音,Select自动匹配字母获取值的代码
Sep 23 #Javascript
jquery ajax 登录验证实现代码
Sep 23 #Javascript
比较全面的event对像在IE与FF中的区别 推荐
Sep 21 #Javascript
javascript 必知必会之closure
Sep 21 #Javascript
用JavaScript隐藏控件的方法
Sep 21 #Javascript
You might like
PHP 抓取新浪读书频道的小说并生成txt电子书的代码
2009/12/18 PHP
smarty巧妙处理iframe中内容页的代码
2012/03/07 PHP
php将gd生成的图片缓存到memcache的小例子
2013/06/05 PHP
PHP获取数组长度或某个值出现次数的方法
2015/02/11 PHP
浅谈PHP发送HTTP请求的几种方式
2017/07/25 PHP
Thinkphp整合阿里云OSS图片上传实例代码
2019/04/28 PHP
PHP使用JpGraph绘制折线图操作示例【附源码下载】
2019/10/18 PHP
php查看一个变量的占用内存的实例代码
2020/03/29 PHP
js下获取div中的数据的原理分析
2010/04/07 Javascript
JAVASCRIPT车架号识别/验证函数代码 汽车车架号验证程序
2012/01/08 Javascript
js/html光标定位的实现代码
2013/09/23 Javascript
javascript中全局对象的isNaN()方法使用介绍
2013/12/19 Javascript
js点击出现悬浮窗效果不使用JQuery插件
2014/01/20 Javascript
jQuery中:animated选择器用法实例
2014/12/29 Javascript
jQuery的框架介绍
2016/05/11 Javascript
jquery实现弹窗功能(窗口居中显示)
2017/02/27 Javascript
Angular 2父子组件之间共享服务通信的实现
2017/07/04 Javascript
vue中post请求以a=a&amp;b=b 的格式写遇到的问题
2018/04/27 Javascript
vue动态注册组件实例代码详解
2019/05/30 Javascript
el-input 标签中密码的显示和隐藏功能的实例代码
2019/07/19 Javascript
微信小程序实现可拖动悬浮图标(包括按钮角标的实现)
2020/12/29 Javascript
Python二维码生成库qrcode安装和使用示例
2014/12/16 Python
Python实现Logger打印功能的方法详解
2017/09/01 Python
Python简单读取json文件功能示例
2017/11/30 Python
django 发送手机验证码的示例代码
2018/04/25 Python
Django打印出在数据库中执行的语句问题
2019/07/25 Python
python实现H2O中的随机森林算法介绍及其项目实战
2019/08/29 Python
python 模拟贷款卡号生成规则过程解析
2019/08/30 Python
Python 函数用法简单示例【定义、参数、返回值、函数嵌套】
2019/09/20 Python
python 8种必备的gui库
2020/08/27 Python
美国第二大团购网站:LivingSocial
2016/07/24 全球购物
建设工程授权委托书
2014/09/22 职场文书
高老头读书笔记
2015/06/30 职场文书
《自己的花是让别人看的》教学反思
2016/02/19 职场文书
如何使用SQL Server语句创建表
2022/04/12 SQL Server
mysql幻读详解实例以及解决办法
2022/06/16 MySQL