`

jQuery操作得到的元素

阅读更多

通过前面的讲解jQuery选择器我们已经能够快速而准确的找到我们想要找的元素了,这时我们就得到了这些元素的一个jQuery对象或jQuery对象数组,我们就可以利用jQuery强大的功能来对页面元素进行各种操作了。

1.操作属性

①读取属性

函数是attr(name)  返回值:Object  参数-name:属性名String  如果没相应属性返回undefined

重要的一点是,如果选择了多个元素,该函数只会"理"第一个元素的这个属性值,而忽略其他元素的相同属性,所以尽量应该保证选择的元素的准确性。

②修改属性

函数还是   attr(key,value) 返回值:jQuery  参数-key:属性名String|value:属性值Object

还有种重载attr(key,fn) 返回值:jQuery  参数-key:属性名String|fn:函数名Function    被选元素的这个属性值就是fn函数的返回值

还有种重载attr(properties)可以使用"名/值"形式一下修改多个属性值  返回值:jQuery  参数-properties:名/值数组Map

如 为所有图像设置src和alt属性

$("img").attr({src:"test.jpg",alt:"Test Image"});  函数参数是一个json对象,名/值对 {名:值,名:值}

重要的一点是,如果选择了多个元素,这些重载的attr会"理"所有元素的这个属性值,即所有被选的元素的这个属性值都会被修改。

③删除属性

函数与读取属性差不多,不多说了  函数是removeAttr(name)

 

2.操作样式类

①添加样式类

函数addClass(class)  返回值:jQuery  参数-class:类名String

②移除样式类

函数removeClass(class)   返回值:jQuery  参数-class:类名String   

以上两种函数,如果要操作多个class 要用空格分开

③交替样式类       返回值:jQuery  参数-class:类名String

函数toggleClass(class)

检查要操作的class如果处于存在状态则移除,如果处于移除状态则添加。

 

3.操作CSS样式

操作样式类必须要依赖于已经定义好的class,现在来学习直接操作与CSS样式。

①读取CSS样式

函数css(name)  返回值:String  参数-name:类名String

该函数只会"理"第一个匹配元素的这个类的值   即便没有人工设置css类  也会获得系统默认的设置

alert($("div p").css("color"))  弹出p元素的文本的颜色值

②设置CSS类

函数css(name,value)  返回值;jQuery  参数-name:css属性名String|value:css属性值String,Number

函数css(properties)    返回值:jQuery  参数-properties:css名/css值数组Map

以上两函数会"理"所有元素的这个css属性,即所有被选的元素的这个css属性值都会被修改。

$("#id").css({"background-color":"green","color":"white"})

将某元素的背景颜色设置为绿色,前景色设置为白色

③获得元素偏移信息

该函数获得某元素距离窗口左上角的偏移量,返回top与left两个值

函数offset()  返回值:Object{top,left}      此函数只对可见元素有效

alert($("#id").offset().top);      弹出某元素距离窗口上沿的偏移量

: position()

获取匹配元素相对父元素的偏移(  使用position()方法时事实上是把该元素当绝对定位来处理,获取的是该元素相当于最近的一个拥有绝对或者相对定位的父元素的偏移位置。  使用position()方法时如果其所有的父元素都为默认定位(static)方式,则其处理方式和offset()一样,是当前窗口的相对偏移。   使用offset()方法不管该元素如何定位,也不管其父元素如何定位,都是获取的该元素相对于当前视口的偏移 )

http://www.jb51.net/article/18340.htm

④获得和设置高度和宽度

函数height()  返回值:Integer  单位:px

如 $(document).height()  $(window).height()  分别获取文档和窗口的高度

函数height(val)  返回值:jQuery  参数-val:高度值String,Number

函数width()  返回值:Integer  单位:px

如 $(document).width()  $(window).width()  分别获取文档和窗口的宽度

函数width(val)  返回值:jQuery  参数-val:高度值String,Number

以上函数有参数的为Number时单位可以是em 默认是px   String时可以加%设置占百分之几

小例子:  $("#id").height(200).width("80%")   将某元素高度设为200px 宽度设为占百分之八十

 

4.操作内容

①操作HTML代码

jQuery中的函数html()和html(val)分别来获取或设置指定元素的HTML代码。这里的HTML代码不包括XML文档,但包括XHTML文档。

html()        返回值:String   取得第一个匹配元素的html内容

补:这个html()方法只会取其内容,比如<div id='test'><p>test</p><div>  $("#test").html()  只会是<p>test</p>而不是<div id='test'><p>test</p><div>

html(val)   返回值:String   参数-val:设置html代码String    设置第一个匹配元素的html内容

$("1").html() $("1").html(val)   这个1不要是input等表单元素 应该是div a等元素

②操作文本

text()       返回值:String  返回所有匹配元素里的文本内容(去掉(X)HTML标签)组合起来的字符串

text(val)   返回值:String  参数-val:设置文本String   返回所有匹配元素的文本内容

这俩方法都支持XML文档

③操作值

表单元素如文本框、多选框、下拉框等的值可以使用函数val()、val(val)来操作

val()        返回值:String,Array  取得第一个匹配元素的值

val(val)    返回值:jQuery  参数-val:设置元素值String  设置所有匹配元素的值

 

5.查找与筛选元素

除了使用选择器对元素进行过滤以外,还可以使用函数在做到

①过滤元素集

filter(expr)  返回值:jQuery  参数-expr:表达式

筛选出与表达式匹配的元素集合。如有多个表达式用逗号隔开

其他过滤元素的函数还有

eq(index)  filter(fn)  hasClass(class)  is(expr)  not(expr)  map(callback)  slice(start,[end])

②在元素集中查找

find(expr)    返回值:jQuery  参数-expr:表达式String

如$("1").find("#dd")   在1的子元素中查找ID为dd的元素  这里以及上面的表达式可以是选择器之类的

next(expr)  返回值:jQuery   参数-expr:表达式String

选择当前元素集合中的每一个元素后面的第一个同级兄弟元素  与$("1+2")选择器不同之处是 next()不需知道其兄弟元素的任何细节

nextAll(expr)      选择当前元素集合中的每一个元素后面的多个同级兄弟元素

以上俩函数还可以通过他们的表达式参数 在这些同级兄弟元素中再过滤掉一些同级兄弟元素 如nextAll("#dd")等(这也是这类函数所共有的特性,他们都可以在本有的元素集中再通过表达式来过滤)

prev(expr)        与next(expr)相反

prevAll(expr)     与nextAll(expr)相反

parent(expr)     选择所有匹配元素集合所共同有的唯一的直接父元素  有时他们共有父元素可能是<body>

parents(expr)   选择所有匹配元素集合的所有父辈元素

children(expr)   选择所有匹配元素集合中每一个元素的直接子元素(不是所有后代元素)

contents()        选择所有匹配元素集合中的所有子节点(包括文本节点)

siblings(expr)   选择所有匹配元素集合中每一个元素的所有同级元素

add(expr)  在已经匹配的元素集合基础上再添加add(表达式)里匹配的元素集合形成新的元素集合  lookhere

 

6.链式操作

"链式操作"是jQuery中最具特色的功能之一。就是把之前需要分多行书写的代码用“.”连成一行进行书写。如下:

$("tr").mouseover(function(){

$(this).addClass("red");

}).mouseout(function(){

$(this).removeClass("red");

})

当鼠标移到一行时添加一种样式,当鼠标移出该行时移除该样式

对于有些返回值是jQuery对象的函数,还有一些特殊的链式操作来实现一些特殊效果,如下:

①结束当前操作对象

$("1").next().next().end().addClass("red")

如果不加end() 那么添加red样式的是1的next().next()  加了end()  添加red样式的是1的next()

end()能结束它前一个返回jQuery对象的函数的功能

②添加当前操作对象到先前对象

$("1").next().next().andSelf().addClass()

添加red样式的是 1, 1的next(), 1的next().next()   很好理解

分享到:
评论

相关推荐

    浅析jquery数组删除指定元素的方法:grep()

    然而,在某些情况下,使用`splice()`方法可能会得到不符合预期的结果,比如在原数组上直接修改,返回被删除的元素,而非原数组的副本。在这种情况下,jQuery提供的`grep()`方法可以提供一种替代方案,它允许通过过滤...

    jquery获取form表单input元素值的简单实例

    需要注意的是,attr()方法在获取某些动态值的时候,可能不会得到最新的结果,因为jQuery的attr()方法是获取元素在HTML代码中设置好的初始属性值。在本例中,$("#cifNo").attr("value")获取到的是cifNo元素HTML代码中...

    jQuery开发技术详解

    第7章 操作得到的元素 第8章 使用jQuery进行DOM操作 第9章 jQuery中的事件处理 第10章 jQuery中的动画与效果 第11章 jQuery与AJAX 第12章 回头重看jQuery——核心及工具 第13章 jQuery增强用户体验 第14章 jQuery中...

    jquery块元素连接线.zip

    2. **计算位置**:获取每个元素的坐标信息,包括顶部、底部、左侧和右侧边缘,这可以通过jQuery的`.offset()`和`.outerWidth()`/`.outerHeight()`方法得到。 3. **绘制线条**: - **SVG**:创建SVG元素,如`&lt;line&gt;...

    Jquery搜索父元素操作方法

    在Web开发中,经常需要进行DOM元素的操作,Jquery作为一款功能强大的JavaScript库,为开发者提供了许多方便快捷的方法来操作DOM元素。当我们需要获取元素的父级或祖先级元素时,Jquery提供了一些便捷的方法来实现这...

    解析Jquery取得iframe中元素的几种方法

    - **通过jQuery操作iframe中的元素**:可以结合使用jQuery选择器与上述DOM方法。例如,选择iframe中所有的文本输入框可以使用`$(window.frames["iframeSon"].document).find(":text")`。 #### 2. jQuery方法 - **...

    jquery删除数组中重复元素

    jQuery库虽然主要是为DOM操作提供便利,但其辅助函数`$.inArray()`也可以帮助我们实现这个功能。本文将详细探讨如何使用jQuery来删除数组中的重复元素。 首先,我们需要了解`$.inArray()`函数。这是一个jQuery提供...

    jQuery 实现DOM元素拖拽交换位置的实例代码

    ### jQuery 实现 DOM 元素拖拽交换位置的原理和技术点 在网页中实现 DOM 元素的拖拽功能能够让用户通过直观的方式进行元素的排序、移动等操作,从而提升网站的交互性和用户体验。本文介绍利用 jQuery 库来实现 DOM ...

    jQuery获得页面元素的绝对/相对位置即绝对X,Y坐标

    在Web开发中,获取页面元素的位置是一个常见的需求,它可以帮助开发者进行DOM操作,实现元素间的定位、布局调整等功能。使用jQuery库时,我们可以利用其提供的方法来获取元素的绝对和相对位置,这些位置通常用元素...

    从零开始学jquery

    jQuery的核心在于它的选择器和链式操作,这些使得对DOM元素的操作变得简单直观。"Hello World jQuery"示例通常是从一个简单的页面引入jQuery的第一步,它演示了如何通过`$(document).ready()`函数确保在页面加载完毕...

    非常经典的35个Jquery应用实例

    使用 JQuery 的第一步,往往就是将一个选择表达式,放进构造函数 jQuery()(简写为$),然后得到被选中的元素。选择表达式可以是 CSS 选择器,也可以是 JQuery 特有的表达式。 * 使用 CSS 选择器:$(document) 选择...

    JavaScript jQuery 中定义数组与操作及jquery数组操作

    ` 这种方式会创建一个包含10个未初始化元素的数组,访问这些元素时会得到 `undefined`。 - 定义可变长度的数组并赋值:`var a = new Array(); a[0] = 10; a[1] = "aaa"; a[2] = 12.6;` - 数组内嵌数组:`var a = ...

    jquery api 3.2.1

    在jQuery 3.2.1中,这一特性得到了进一步强化。 1. **选择器(Selectors)**:jQuery的选择器功能强大,能够方便地选取HTML元素。如`$("#id")`选取ID为id的元素,`$(".class")`选取所有class为class的元素,`$("tag...

    jQuery1.12.4.js

    2. **DOM操作**:jQuery提供了一整套API来操作DOM,例如`append()`用于在元素末尾添加内容,`prepend()`在元素开头插入内容,`remove()`移除元素,以及`html()`, `text()`, `val()`等用于获取或设置元素的HTML、文本...

    jquery对象和dom对象

    // 选择id为'myElement'的元素,得到jQuery对象 console.log($element.html()); // 输出元素内的HTML内容 $element.html('新的内容'); // 修改元素内容 ``` **jQuery对象和DOM对象之间的转换** 虽然jQuery对象和...

    JQuery API 参考文献

    1. **选择器**: jQuery 的核心在于强大的选择器,如 `$("#id")` 用于选取ID为`id`的元素,`$(".class")` 选取所有class为`class`的元素,以及 `$("tag")` 选取所有`tag`类型的元素。 2. **链式操作**: jQuery对象...

    jquery-1.7.2.js 、jquery-1.7.2.min.js 【官方jquery包 js】

    2. **DOM操作**:jQuery简化了DOM元素的操作,如`$(element).html()`用于获取或设置元素的HTML内容,`$(element).append()`和`$(element).prepend()`则分别用于在元素内部追加和预追加内容。 3. **事件处理**:...

    jQuery 1.6 中文API (适用jQuery 1.6,jQuery 1.6.1,jQuery 1.6.2)

    jQuery是JavaScript库中的一款经典工具,它极大地简化了DOM操作、事件处理、动画制作和Ajax交互。本资源主要关注的是jQuery 1.6版本及其后续的小版本更新,包括1.6.1和1.6.2。这些版本在当时引入了许多重要的改进...

    jquery教程 15天学会jquery(完整版)

    4. **DOM操作**:学习如何使用jQuery选择并操作DOM元素,包括获取和设置属性、内容、CSS样式。 **第2天:jQuery事件处理** 1. **事件绑定**:掌握`.on()`方法,用于绑定各种事件,如点击(`click`)、改变(`change`)...

    jquery攻略

    - **DOM操作**:教授如何使用jQuery进行DOM元素的创建、删除、替换等操作。 - **事件处理**:详解如何利用jQuery绑定、触发及解绑各种事件。 2. **进阶篇** - **动态效果**:学习如何使用jQuery实现页面元素的...

Global site tag (gtag.js) - Google Analytics