`
everlxq
  • 浏览: 111662 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

jquery操作dom元素

 
阅读更多
http://www.w3school.com.cn/jquery/jquery_ref_manipulation.asp


addClass() 向匹配的元素添加指定的类名。
after() 在匹配的元素之后插入内容。
append() 向匹配的元素内部追加内容。
appendTo() 向匹配的元素内部追加内容。
attr() 设置或返回匹配元素的属性和值。
before() 在每个匹配的元素之前插入内容。
clone() 创建匹配元素集合的副本。
detach() 从 DOM 中移除匹配元素集合。
empty() 删除匹配的元素集合中所有的子节点。
hasClass() 检查匹配的元素是否拥有指定的类。
html() 设置或返回匹配的元素集合中的 HTML 内容。
insertAfter() 把匹配的元素插入到另一个指定的元素集合的后面。
insertBefore() 把匹配的元素插入到另一个指定的元素集合的前面。
prepend() 向每个匹配的元素内部前置内容。
prependTo() 向每个匹配的元素内部前置内容。
remove() 移除所有匹配的元素。
removeAttr() 从所有匹配的元素中移除指定的属性。
removeClass() 从所有匹配的元素中删除全部或者指定的类。
replaceAll() 用匹配的元素替换所有匹配到的元素。
replaceWith() 用新内容替换匹配的元素。
text() 设置或返回匹配元素的内容。
toggleClass() 从匹配的元素中添加或删除一个类。
unwrap() 移除并替换指定元素的父元素。
val() 设置或返回匹配元素的值。
wrap() 把匹配的元素用指定的内容或元素包裹起来。
wrapAll() 把所有匹配的元素用指定的内容或元素包裹起来。
wrapinner() 将每一个匹配的元素的子内容用指定的内容或元素包裹起来。






获取dom获取表单

document.getElementsByTagName("from");

使用dom获取 某元素src属性的方法

element.getAttribute("src");



利用jquery操作dom

1.       利用jquery进行文档处理

2.1:外部插入

after(content)

在每个匹配的元素之后插入内容。

返回值

jQuery

参数

content (String, dom, jQuery) : 插入到每个目标后的内容

示例

在所有段落之后插入一些HTML标记代码。

HTML 代码:

<p>I would like to say: </p>

jQuery 代码:

$("p").after("<b>Hello</b>");

结果:

<p>I would like to say: </p><b>Hello</b>

在所有段落之后插入一个DOM元素。

HTML 代码:

<b id="foo">Hello</b><p>I would like to say: </p>

jQuery 代码:

$("p").after( $("#foo")[0] );//将jquery对象转换为dom对象$("#foo")[0]

结果:

<p>I would like to say: </p><b id="foo">Hello</b>

在所有段落中后插入一个jQuery对象(类似于一个DOM元素数组)。

HTML 代码:

<b>Hello</b><p>I would like to say: </p>

jQuery 代码:

$("p").after( $("b") );

结果:

<p>I would like to say: </p><b>Hello</b>

before(content)在每个匹配的元素之前插入内容。

返回值

jQuery

参数

content (String, Element, jQuery) : 插入到每个目标前的内容

示例

在所有段落之前插入一些HTML标记代码。

HTML 代码:

<p>I would like to say: </p>

jQuery 代码:

$("p").before("<b>Hello</b>");

结果:   [ <b>Hello</b><p>I would like to say: </p> ]

在所有段落之前插入一个元素。

HTML 代码:

<p>I would like to say: </p><b id="foo">Hello</b>

jQuery 代码:

$("p").before( $("#foo")[0] );

结果:

<b id="foo">Hello</b><p>I would like to say: </p>

在所有段落中前插入一个jQuery对象(类似于一个DOM元素数组)。

HTML 代码:

<p>I would like to say: </p><b>Hello</b>

jQuery 代码:

$("p").before( $("b") );

结果:

<b>Hello</b><p>I would like to say: </p>

insertAfter(content)

把所有匹配的元素插入到另一个、指定的元素元素集合的后面。

实际上,使用这个方法是颠倒了常规的$(A).after(B)的操作,即不是把B插入到A后面,而是把A插入到B后面。

返回值jQuery

参数 content (String) : 用于匹配元素的jQuery表达式

示例

在所有段落之后插入一个元素。与 $("#foo").after("p")相同

HTML 代码:

<p>I would like to say: </p><div id="foo">Hello</div>

jQuery 代码:

$("p").insertAfter($("#foo“));  在$("#foo“)在它后面插入段落P

结果:

<div id="foo">Hello</div><p>I would like to say: </p>

insertBefore(content)

把所有匹配的元素插入到另一个、指定的元素元素集合的前面。

实际上,使用这个方法是颠倒了常规的$(A).before(B)的操作,即不是把B插入到A前面,而是把A插入到B前面。

返回值jQuery

参数 content (String) : 用于匹配元素的jQuery表达式

示例

在所有段落之前插入一个元素。与 $("#foo").before("p")相同。

HTML 代码:

<div id="foo">Hello</div><p>I would like to say: </p>

jQuery 代码:

$("p").insertBefore($("#foo“));   在$("#foo“)前面插入段落p

结果:

<p>I would like to say: </p><div id="foo">Hello</div>



2.2: 内部插入

append(content)

向每个匹配的元素内部追加内容。

这个操作与对指定的元素执行appendChild方法,将它们添加到文档中的情况类似。

返回值jQuery

参数 content (String, Element, jQuery) : 要追加到目标中的内容

示例 :向所有段落中追加一些HTML标记。

HTML 代码:

<p>I would like to say: </p>

jQuery 代码:

$("p").append("<b>Hello</b>");   在p元素之间插入 b元素

结果:

[ <p>I would like to say: <b>Hello</b></p> ]

appendTo(content)

把所有匹配的元素追加到另一个、指定的元素元素集合中。

实际上,使用这个方法是颠倒了常规的$(A).append(B)的操作,即不是把B追加到A中,而是把A追加到B中。

返回值jQuery

参数content (String) :用于被追加的内容

示例

把所有段落追加到ID值为foo的元素中。

HTML 代码:

<p>I would like to say: </p><div id="foo"></div>

jQuery 代码:

$("p").appendTo($("#foo“)); P元素被添加到div元素#foo之中

结果:

<div id="foo"><p>I would like to say: </p></div>

prepend(content)

向每个匹配的元素内部前置内容。

这是向所有匹配元素内部的开始处插入内容的最佳方式。

返回值jQuery

参数content (String, Element, jQuery) : 要插入到目标元素内部前端的内容

示例

向所有段落中前置一些HTML标记代码。

HTML 代码:

<p>I would like to say: </p>

jQuery 代码:

$("p").prepend("<b>Hello</b>");   //将<b>Hello</b>添加到p标签内容前

结果:

[ <p><b>Hello</b>I would like to say: </p> ]

将一个DOM元素前置入所有段落

HTML 代码:

<p>I would like to say: </p>
<p>I would like to say: </p>
<b class="foo">Hello</b>
<b class="foo">Good Bye</b>

jQuery 代码:

$("p").prepend( $(".foo")[0] );

结果:

<p><b class="foo">Hello</b>I would like to say: </p>
<p><b class="foo">Hello</b>I would like to say: </p>
<b class="foo">Hello</b>
<b class="foo">Good Bye</b>

向所有段落中前置一个jQuery对象(类似于一个DOM元素数组)。

HTML 代码:

<p>I would like to say: </p><b>Hello</b>

jQuery 代码:

$("p").prepend( $("b") );

结果:

<p><b>Hello</b>I would like to say: </p>

prependTo(content)

把所有匹配的元素前置到另一个、指定的元素元素集合中。

实际上,使用这个方法是颠倒了常规的$(A).prepend(B)的操作,即不是把B前置到A中,而是把A前置到B中。

返回值jQuery

参数content (String) :用于匹配元素的jQuery表达式

示例

把所有段落追加到ID值为foo的元素中。

HTML 代码:

<p>I would like to say: </p><div id="foo"></div>

jQuery 代码:

$("p").prependTo($("#foo“));  把所有段落插入到div foo中

结果:

<div id="foo"><p>I would like to say: </p></div> 2.3:

包裹

}       wrap(html)

把所有匹配的元素用其他元素的结构化标记包裹起来。

这种包装对于在文档中插入额外的结构化标记最有用,而且它不会破坏原始文档的语义品质。 这个函数的原理是检查提供的第一个元素(它是由所提供的HTML标记代码动态生成的),并在它的代码结构中找到最上层的祖先元素--这个祖先元素就是包裹元素。



当HTML标记代码中的元素包含文本时无法使用这个函数。因此,如果要添加文本应该在包裹完成之后再行添加。

返回值jQuery

参数

html (String) : HTML标记代码字符串,用于动态生成元素并包裹目标元素

示例

把所有的段落用一个新创建的div包裹起来

HTML 代码:

<p>Test Paragraph.</p>

jQuery 代码:

$("p").wrap("<div class='wrap'></div>"); 段落P用div class='wrap'包裹起来

结果:

<div class="wrap"><p>Test Paragraph.</p></div>

wrap(elem)

把所有匹配的元素用其他元素的结构化标记包装起来。

返回值jQuery

参数elem (Element) : 用于包装目标元素的DOM元素

}         示例

}         用ID是"content"的div将每一个段落包裹起来

}         HTML 代码:

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

}         jQuery 代码:

}         $("p").wrap(document.getElementById('content'));

}         结果:

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

wrapAll(html)

将所有匹配的元素用单个元素包裹起来

这于 '.wrap()' 是不同的,'.wrap()'为每一个匹配的元素都包裹一次。 这种包装对于在文档中插入额外的结构化标记最有用,而且它不会破坏原始文档的语义品质。

这个函数的原理是检查提供的第一个元素并在它的代码结构中找到最上层的祖先元素--这个祖先元素就是包装元素。

返回值jQuery

参数html (String) : TML标记代码字符串,用于动态生成元素并包装目标元素

示例

用一个生成的div将所有段落包裹起来

}         HTML 代码:

}         <p>Hello</p><p>cruel</p><p>World</p>

}         jQuery 代码:

}         $("p").wrapAll("<div></div>");  //如果是wrap 则 每个段落P都被div包裹

}         结果:

}         <div><p>Hello</p><p>cruel</p><p>World</p></div>



wrapAll(elem)

将所有匹配的元素用单个元素包裹起来

这于 '.wrap()' 是不同的,'.wrap()'为每一个匹配的元素都包裹一次。

返回值jQuery

参数elem (Element) : 用于包装目标元素的DOM元素

示例

用一个生成的div将所有段落包裹起来

HTML 代码:

<p>Hello</p><p>cruel</p><p>World</p>

jQuery 代码:

$("p").wrapAll(document.createElement("div"));

结果:

<div><p>Hello</p><p>cruel</p><p>World</p></div>

wrapInner(html)

将每一个匹配的元素的子内容(包括文本节点)用一个HTML结构包裹起来

这个函数的原理是检查提供的第一个元素(它是由所提供的HTML标记代码动态生成的),并在它的代码结构中找到最上层的祖先元素--这个祖先元素就是包装元素。

返回值jQuery

参数html (String) : HTML标记代码字符串,用于动态生成元素并包装目标元素

示例

把所有段落内的每个子内容加粗

HTML 代码:

<p>Hello</p><p>cruel</p><p>World</p>

jQuery 代码:

$("p").wrapInner("<b></b>");

结果:

<p><b>Hello</b></p><p><b>cruel</b></p><p><b>World</b></p>

wrapInner(elem)

将每一个匹配的元素的子内容(包括文本节点)用DOM元素包裹起来

返回值jQuery

参数elem (Element) : 用于包装目标元素的DOM元素

示例

把所有段落内的每个子内容加粗

HTML 代码:

<p>Hello</p><p>cruel</p><p>World</p>

jQuery 代码:

$("p").wrapInner(document.createElement("b"));

结果:

<p><b>Hello</b></p><p><b>cruel</b></p><p><b>World</b></p>









2.4: 替换

replaceWith(content)

将所有匹配的元素替换成指定的HTML或DOM元素。

返回值

jQuery

参数

content (String, Element, jQuery) : 用于将匹配元素替换掉的内容

示例

把所有的段落标记替换成加粗的标记。

HTML 代码:

<p>Hello</p><p>cruel</p><p>World</p>

jQuery 代码:

$("p").replaceWith("<b>Paragraph. </b>");

结果:

<b>Paragraph. </b><b>Paragraph. </b><b>Paragraph. </b>

replaceAll(selector) 去替换

用匹配的元素替换掉所有 selector匹配到的元素。

返回值jQuery

参数selector (选择器) : 用于查找所要被替换的元素

示例

把所有的段落标记替换成加粗标记

HTML 代码:

<p>Hello</p><p>cruel</p><p>World</p>

jQuery 代码:

$("<b>Paragraph. </b>").replaceAll("p"); 

结果:

<b>Paragraph. </b><b>Paragraph. </b><b>Paragraph. </b>

2.5: 删除

}       empty()

删除匹配的元素集合中所有的子节点。

返回值jQuery

示例把所有段落的子元素(包括文本节点)删除

HTML 代码:

<p>Hello, <span>Person</span> <a href="#">and person</a></p>

jQuery 代码:

$("p").empty();  删除p中所有内容

结果:

<p></p>









remove([expr])

从DOM中删除所有匹配的元素。

这个方法不会把匹配的元素从jQuery对象中删除,因而可以在将来再使用这些匹配的元素。

返回值jQuery

参数expr (String) : (可选) 用于筛选元素的jQuery表达式

示例从DOM中把所有段落删除

HTML 代码:

<p>Hello</p> how are <p>you?</p>

jQuery 代码:

$("p").remove(); //移除p标签

结果:

how are

从DOM中把带有hello类的段落删除

}         HTML 代码:

}         <p class="hello">Hello</p> how are <p>you?</p>

}         jQuery 代码:

}         $("p").remove(".hello");

}         结果:

}         how are <p>you?</p>

2.6: 复制

clone()

克隆匹配的DOM元素并且选中这些克隆的副本。

在想把DOM文档中元素的副本添加到其他位置时这个函数非常有用。

返回值jQuery

示例克隆所有b元素(并选中这些克隆的副本),然后将它们前置到所有段落中。

HTML 代码:

<b>Hello</b><p>, how are you?</p>

jQuery 代码:

$("b").clone().prependTo("p");  将b标签赋值到p标签中,没有clone 就会直接插入到p

结果:

<b>Hello</b><p><b>Hello</b>, how are you?</p>











clone(true)

元素以及其所有的事件处理并且选中这些克隆的副本

在想把DOM文档中元素的副本添加到其他位置时这个函数非常有用。

返回值jQuery

参数true (Boolean) : 设置为true以便复制元素的所有事件处理

示例

创建一个按钮,他可以复制自己,并且他的副本也有同样功能。

HTML 代码:

<button>Clone Me!</button>

jQuery 代码:

$("button").click(function(){
  $(this).clone(true).insertAfter(this);

//复制 当前元素包含他的事件 并将副本插入到当前元素前面
});

二、jQuery遍历与查找节点

Ø       过滤

Ø       查找

Ø       串联

1.1、jQuery过滤

eq(index)获取第N个元素

这个元素的位置是从0算起。

返回值jQuery

参数index (Integer) :元素在jQuery对象中的索引

示例

获取匹配的第二个元素

HTML 代码:

<p> This is just a test.</p> <p> So is this</p>

jQuery 代码:

$("p").eq(1)

结果:

[ <p> So is this</p> ]

hasClass(class) 查找类

检查当前的元素是否含有某个特定的类,如果有,则返回true。

这其实就是 is("." + class)。

返回值Boolean

参数class (String) : 用于匹配的类名

示例:给包含有某个类的元素进行一个动画。

HTML 代码:

<div class="protected"></div><div></div>

jQuery 代码:

$("div").click(function(){
  if ( $(this).hasClass("protected") )
    $(this)
      .animate({ left: -10 })
      .animate({ left: 10 })
      .animate({ left: -10 })
      .animate({ left: 10 })
      .animate({ left: 0 });
});

is(expr)

用一个表达式来检查当前选择的元素集合,如果其中至少有一个元素符合这个给定的表达式就返回true。

如果没有元素符合,或者表达式无效,都返回'false'. 'filter' 内部实际也是在调用这个函数,所以,filter()函数原有的规则在这里也适用。

返回值Boolean

参数expr (String) :用于筛选的表达式

示例:由于input元素的父元素是一个表单元素,所以返回true。

HTML 代码:

<form><input type="checkbox" /></form>

jQuery 代码:

$("input[type='checkbox']").parent().is("form") // parent()父元素

结果:

true

1.2、jQuery查找

find(expr)

搜索所有与指定表达式匹配的元素。这个函数是找出正在处理的元素的后代元素的好方法。

所有搜索都依靠jQuery表达式来完成。这个表达式可以使用CSS1-3的选择器语法来写。

返回值jQuery

参数:expr (String) :用于查找的表达式

示例:从所有的段落开始,进一步搜索下面的span元素。与$("p span")相同。

}         HTML 代码:

}         <p><span>Hello</span>, how are you?</p>

}         jQuery 代码:

}         $("p").find("span")

}         结果:

}         [ <span>Hello</span> ]

next([expr])

取得一个包含匹配的元素集合中每一个元素紧邻的后面同辈元素的元素集合。

这个函数只返回后面那个紧邻的同辈元素,而不是后面所有的同辈元素(可以使用nextAll)。可以用一个可选的表达式进行筛选。

返回值jQuery

参数expr (String) : (可选) 用于筛选的表达式

}         示例找到每个段落的后面紧邻的同辈元素。



}         HTML 代码:

}         <p>Hello</p><p>Hello Again</p><div><span>And Again</span></div>

}         jQuery 代码:

}         $("p").next()

}         结果:

}         [ <p>Hello Again</p>, <div><span>And Again</span></div> ]

找到每个段落的后面紧邻的同辈元素中类名为selected的元素。

}         HTML 代码:

}         <p>Hello</p><p class="selected">Hello Again</p><div><span>And Again</span></div>

}         jQuery 代码:

}         $("p").next(".selected")

}         结果:

}         [ <p class="selected">Hello Again</p> ]

1.3、jQuery串联

}       andSelf()

加入先前所选的加入当前元素中

对于筛选或查找后的元素,要加入先前所选元素时将会很有用。

返回值jQuery

示例:选取所有div以及内部的p,并加上border类

HTML 代码:

<div><p>First Paragraph</p><p>Second Paragraph</p></div>

jQuery 代码:

$("div").find("p").andSelf().addClass("border");

//div中寻找段落P,和他自己(andSelf)加类class="border"

结果:

<div class="border"><p class="border">First Paragraph</p><p class="border">Second Paragraph</p></div>
分享到:
评论

相关推荐

    JQuery操作DOM元素

    该文档包含了样式操作,内容及Value属性值操作,节点操作,节点属性操作,节点遍历操作的基础知识,也许不够详细,但内容也应该足够平时操作了,希望能帮到大家

    基于JQuery的DOM元素操作技术详解

    使用场景及目标:适用于进行Web页面动态效果设计、表单数据验证等前后端交互场景,帮助前端工程师快速掌握利用 jQuery 操作DOM的基本技能。 其他说明:本文提供的实例简单易懂,能够有效地辅助学习者理解和记忆相关...

    JQuery DoM和ajax 操作

    4. **$.load()**: 用于从服务器加载HTML片段,并将其插入到指定的DOM元素中。 5. **AJAX事件**: `beforeSend()`, `success()`, `error()`, `complete()`等,允许我们在请求的不同阶段进行自定义操作。 6. **全局...

    探析在jQuery框架下操作HTMLDOM元素.pdf

    探析在jQuery框架下操作HTML DOM元素 ... ...它将网页中的各个元素都看作一个个对象,从而使网页中的元素也可以被...jQuery操作HTML DOM元素能够极大地提高开发效率和开发体验,使得开发者能够更方便地实现复杂的功能。

    Jquery+dom+easyUI教程

    2. DOM 操作:jQuery 提供了一整套方法来操作 DOM 元素,包括添加、删除和修改元素。例如,`append()`用于在元素内部追加内容,`remove()`用于删除元素,而`attr()`则用来设置或获取元素的属性值。此外,`html()`和`...

    jQuery操作DOM解析

    **jQuery操作DOM解析** 在Web开发中,DOM(Document Object Model)是HTML或XML文档的结构化表示,它允许程序和脚本动态更新、添加、删除和改变元素。jQuery库简化了JavaScript对DOM的操作,提供了丰富的API来处理...

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

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

    使用jQuery监听DOM元素大小变化

    在JavaScript和jQuery的世界里,有时候我们需要监听DOM元素的尺寸变化,以便在元素尺寸改变时执行特定的操作。jQuery的`resize`事件通常用于监听窗口大小的变化,但jQuery还提供了一种扩展,使得我们可以将`resize`...

    jQuery鼠标拖动旋转DOM元素插件

    **jQuery鼠标拖动旋转DOM元素插件——Propeller.js** Propeller.js是针对jQuery的一款高效插件,专门用于实现用户可以通过鼠标拖动来旋转页面上的DOM元素,为交互设计提供了更多的可能性。这款插件的核心功能在于它...

    jQuery 创建Dom元素

    "jQuery 创建Dom元素" jQuery 是一个流行的 JavaScript 库,提供了许多有用的功能来操作 DOM 元素。在这篇文章中,我们将讨论如何使用 jQuery 创建 DOM 元素。 什么是 DOM 元素? 在 HTML 文档中,每个元素都是...

    jQuery DOM节点操作源码

    2. **链式操作**:jQuery对象返回的是一个包含零个或多个DOM元素的集合,这个集合支持链式调用,使得多步操作可以紧凑地写在一起,如 `$("#myDiv").html("Hello").css("color", "red")`。 3. **DOM遍历**:jQuery...

    Jquery方式获取iframe页面中的 Dom元素

    需要注意的是,使用jQuery操作iframe中的DOM时,必须确保iframe已经完全加载完毕,否则可能无法正确获取其内部的DOM元素。为了处理这种情况,通常我们会将相关操作放在iframe的“load”事件中或者在window的“load”...

    jQuery基础DOM和CSS操作源码

    DOM(Document Object Model)是HTML和XML文档的结构化表示,jQuery提供了简便的方法来操作DOM元素。例如,`$()`函数是jQuery的核心,它可以用来选择DOM元素,如`$("#elementID")`选择ID为"elementID"的元素,`$("....

    jQuery一个非常流行的操作Dom的JavaScript库

    - **选择器(Selectors)**:jQuery支持CSS1-CSS3的选择器,以及特有的如`:eq()`, `:first`, `:last`, `:even`, `:odd`等,使得选取DOM元素变得极其简单。 - **链式调用(Chaining)**:jQuery对象是可链式的,...

    jquery dom对象 详细介绍1

    jQuery 是一个广泛使用的JavaScript库,它简化了DOM操作、AJAX请求、事件处理以及创建复杂的网页特效。jQuery的核心特性包括对JSON的支持、XML解析以及一套强大的选择器系统,使得开发者能够更加高效地选取和操作...

    JQuery进阶.docx

    以下代码示例展示了如何使用jQuery操作DOM元素: ```html &lt;!DOCTYPE html&gt; &lt;title&gt;JQuery DOM操作 &lt;script src="js/jquery-3.4.1.min.js"&gt; $(function () { // 在每个段落之后插入一个新的段落 $(...

    jQuery创建DOM元素实例解析

    在实际开发中,使用jQuery创建和操作DOM元素是一种常见的操作,它帮助开发人员快速完成页面的动态交互。例如,动态地添加元素到页面中,或者根据用户的操作更改页面内容等。通过上述提到的方法,可以轻松地实现这些...

    jquery教学ppt课件

    4. **DOM操作**:通过实例展示如何使用jQuery操作DOM元素,如添加、删除、查找和修改元素。 5. **事件处理**:演示如何绑定和解绑事件,以及使用事件冒泡和事件委托。 6. **动画与效果**:讲解如何创建和组合动画...

    jQuery纸牌游戏

    5. 用户界面:利用jQuery操作DOM元素,动态更新游戏界面,如计分板、提示信息等。 四、重构与扩展 作为学习和实践的项目,这个jQuery纸牌游戏提供了丰富的拓展空间: 1. 美观性提升:可以使用CSS3改进样式,增加...

Global site tag (gtag.js) - Google Analytics