我正在使用以下代码测试 jQuery 的 .append()
与 .appendTo()
方法:
$('div/>', {
id : id,
text : $(this).text()
}).appendTo('div[type|="item"]#'+id);
$('div[type|="item"]#'+id).append($(this).text());
请注意,.appendTo()
和 .append()
中的选择器是相同的,但后者可以工作(在同一页面内),而前者则不能。为什么?
如何让 .appendTo()
与这种类型的(复杂)选择器一起使用?选择器?这两种方法的插值是否不同?我缺少一些语法吗?
我不想用不恰当的代码使帖子变得困惑:只要说选择器引用的元素存在就足够了,正如产生所需结果的 .append()
方法所证明的那样。如果需要更多信息,请告诉我。
谢谢!
最佳答案
要回答这个问题,您没有 appendTo
的元素任何东西,因为您缺少字符(在您的情况下,它是一个 左尖括号 <
)。
这个
$('div/>',{});
需要
$('<div/>',{});
创建一个元素,否则它会完全按照你所说的那样做 - 什么也不做!
<小时/>否则你的顺序似乎是正确的,就像这样:
.append()
插入参数指定的内容,以 匹配元素集中每个元素的末尾,如$(Append_To_This).append(The_Content_Given_Here);
同时
.appendTo()
工作方式相反:它插入每个 匹配元素集中的元素到给定目标的末尾 在参数中,如$(The_Content_Given_Here).appendTo(Append_To_This);
还有 .prepend()
和 prependTo()
其工作原理完全相同,唯一的区别是前置元素添加在目标元素内容的开头而不是末尾。
关于jQuery:append() 与appendTo(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13478372/