0

我正在尝试使用 id 选择器将段落添加到 h2 标记。但是,由于某种原因,它无法正常工作。有人会帮我解决这个问题吗?

我有一个小提琴我做了尝试。见:http: //jsfiddle.net/ahLqZ/4/

下面是我的代码:

 $(document).ready(function(){

        $("#cevre h2").appendTo($(this).next("p"));

    })​
4

1 回答 1

4

尝试这个 :

$("#cevre h2").each(function() {
     $(this).appendTo($(this).next("p"));
});

用于.each()迭代h2元素 - 然后$(this)成为每个h2元素而不是那个document元素

这里的工作示例

注意在已经存在的 DOM 元素上使用appendTo会移动它......你可能想要(也许不是)是这样的:

$("#cevre h2").each(function() {
     $(this).clone().insertAfter($(this).next("p"));
});

用于.clone()创建h2第一个的克隆并将.insertAfter()新克隆的 DOM 元素插入到元素之后,<p>而不是在其中...

这里的工作示例

另一个注意事项id-在单个页面中具有重复属性的 HTML 无效...我建议您更改<div id="cevre"><div class="cevre">...然后您的 jQuery 选择器变为$(".cevre h2")

另一个注意事项- 如果多次使用 jQuery 对象,您应该缓存它们:

$(".cevre h2").each(function() {
     var $this = $(this);
     $this.clone().insertAfter($this.next("p"));
});
于 2012-07-17T15:24:53.710 回答