.replaceAll()


html+div+css+天猫商城
html5+css3+京东手机网站
javascript+jquery+ajax
正则表达式+面向对象+js插件
2D+3D+触屏事件+Canvas+Svg
地理信息+本地存储+H5拖拽api
查看课程大纲

.replaceAll( target )返回: jQuery

描述: 用集合的匹配元素替换每个目标元素。

  • 添加的版本: 1.2.replaceAll( target )

    • target
      类型: Selector or jQuery or Array or Element
      一个选择器字符串,jQuery对象,DOM元素,或者元素数组,包含哪个元素被替换。

.replaceAll().replaceWith()功能类似,但是目标和源相反。请看下面的HTML:

1
2
3
4
5
<div class="container">
<div class="inner first">Hello</div>
<div class="inner second">And</div>
<div class="inner third">Goodbye</div>
</div>

我们可以创建一个元素然后用它替换其它元素:

1
$('<h2>New heading</h2>').replaceAll('.inner');

结果如下:

1
2
3
4
5
<div class="container">
<h2>New heading</h2>
<h2>New heading</h2>
<h2>New heading</h2>
</div>

或者,我们也可以选择一个元素用来替换其它的:

1
$('.first').replaceAll('.third');

DOM结构的结果:

1
2
3
4
<div class="container">
<div class="inner second">And</div>
<div class="inner first">Hello</div>
</div>

从这个例子可以看出,用来替换的元素从老地方移到新位置,而不是复制。

其他注意事项:

  • .replaceAll() 方法会删除与节点相关联的所有数据和事件处理程序 。

例子:

将所有段落换成粗体字

1
2
3
4
5
6
7
8
9
10
11
12
13
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<p>Hello</p>
<p>cruel</p>
<p>World</p>
<script>$("<b>Paragraph. </b>").replaceAll("p");</script>
</body>
</html>

Demo: