你的位置:首页 > Java教程

[Java教程]jquery的insertBefore(),insertAfter(),after(),before()


insertBefore():a.insertBefore(b)

       a在前,b在后,

       a:是一个选择器,b:也是一个选择器

<!DOCTYPE html><html><head>  <meta charset='UTF-8'>  <title>jqu</title>  <script type="text/javascript" src='jquery-2.2.0.min.js'></script></head><body><p class='p1'>p1:hello</p>hello world<p class='p2'>p2:wenwen</p>hello wo</body><script type="text/javascript">  $(function(){    $('.p2').insertBefore('.p1');      })</script></html>

得到:

p2:wenwenp1:hellohello world hello wo

insertAfter():跟insertBefore()是一样的道理

      a.insertAfter(b)

      a在后,b在前

 

 

现在是说before()

before():a.before()

     a是页面上已有的选择器,b是你需要添加的内容,注意:是什么就是什么,会识别标签,b不是一个选择器

     a在后,b在前

<!DOCTYPE html><html><head>  <meta charset='UTF-8'>  <title>jqu</title>  <script type="text/javascript" src='jquery-2.2.0.min.js'></script></head><body><p class='p1'>p1:hello</p><p class='p2'>p2:wenwen</p></body><script type="text/javascript">  $(function(){    $('.p2').before('.p1');  })</script></html>

最后得到:

p1:hello.p1p2:wenwen

看到吗?.p1并不识别选择器,直接就是字符串,在.p2选择器的前面位置

 

after():跟before()是同理的,只是一个在前一个在后

 

我只是想说insertBefore(),insertAfter()跟before(),after()的区别,我感觉最大一个区别就是看你要用到的场景,你要是需要两个选择器的位置调换就用insertBefore(),insertAfter()

要是需要一个选择器跟一个文本进行调换位置就可以用before(),after();当然这个不只是调换位置啦

调换位置是说页面上已经存在的东西,这个方法里面也可以加页面上没有的东西,比如:

$('<p class='p3'>嘿嘿</p>').insertBefore('.p1');