包含jqueryafter的词条
JQUERY after 每点一次就多一次,这是什么原因
jquery中的after()、before()是往选定的标签的后或者前追加内容
例如:
pp1/p
$("p").after("aa1a/");//往p标签的后面追加一个a标签
jquery中after与insertAfter有什么区别
jquery的dom操作方法中,包括了after与insertAfter,这两个方法名字相近,所实现的功能从名 字中不容易分辨,所以在经过试验后撰文一篇以加深记忆。
测试代码如下:
head
meta charset=”utf-8″
title 测试insertAfter与after的区别 /title
/head
body
ul
li class=”first”first/li
li class=”middle”middle/li
li class=”last”last/li
/ul
/body
/html
自然状态下显示是这样的:
添加脚本:$(‘.first’).insertAfter($(‘.last’));
则会把first移到last后面去,变成了这样:
如果把insertAfter方法换为after,效果则为:
从上述对比可以看出,其实这两个方法的差别就像主语跟宾语的差别一样,是主与从的问题。
after方法,是把参数元素移到调用方法的元素的后面,而insertAfter方法则恰恰相反,是把调用 方法的元素插入到参数元素的后面。
另外要注意的是,当要用这两个方法在dom树中添加新元素时,如
”linew/li”,这样的html字符串不能出现在after方法的调用主体或
insertAfter的参数中,因为这样一来,jquery不知道要把新元素放到哪里去,反而会导致要相关的原 有元素丢失。
Jquery中的append跟prepend,after和before的区别
实例代码:
ul
???li元素1/li
???li元素2/li
???li元素3/li
/ul
①append是插入到所选元素里面子元素的最后面。
如$("ul").append("li插入的元素4/li");结构会变成:
ul
???li元素1/li
???li元素2/li
???li元素3/li
???li插入的元素4/li
/ul
②prepend是插入到所选元素里面子元素的最前面。
如$("ul").prepend("li插入的元素4/li");结构会变成:
ul
???li插入的元素4/li
???li元素1/li
???li元素2/li
???li元素3/li
/ul
③after是插入到所选元素的最后面(紧挨着被选元素)。
如$("ul").after("div新盒子/div");结构会变成:
ul
???li元素1/li
???li元素2/li
???li元素3/li
/ul
div新盒子/div
④before是插入到所选元素的前面(紧挨着被选元素)。
如$("ul").before("div新盒子/div");结构会变成:
div新盒子/div
ul
???li元素1/li
???li元素2/li
???li元素3/li
/ul