Javascript jQuery insertBefore,动态创建元素的Apend

Javascript jQuery insertBefore,动态创建元素的Apend,javascript,jquery,Javascript,Jquery,请看一看代码,它正在工作,它应该只添加一个p标记,但由于某些原因,它正在插入几个p标记。P标记不是动态创建的,但是P标记中的一些内容是动态创建的(如果重要的话,只是为了信息) 我只想在class.main内容的其他p标记之前插入一个p标记(不是几个) 提前感谢您。您可以尝试以下方法: var ptag = jQuery('p.test-me').eq(0); ptag.insertBefore('.main-content'); 当您引用类名为的p元素时,在您的代码中。test me如果您有多

请看一看代码,它正在工作,它应该只添加一个p标记,但由于某些原因,它正在插入几个p标记。P标记不是动态创建的,但是P标记中的一些内容是动态创建的(如果重要的话,只是为了信息)

我只想在class.main内容的其他p标记之前插入一个p标记(不是几个)

提前感谢您。

您可以尝试以下方法:

var ptag = jQuery('p.test-me').eq(0);
ptag.insertBefore('.main-content');

当您引用类名为
p元素时,在您的代码中。test me
如果您有多个p元素具有该类名,则可能检索多个元素。正如您所说的,它附加了多个p元素,已确认有多个元素的类名为
。test me
。如果不希望追加多个元素,并且非常确定要追加的元素,只需使用
id
而不是类名,否则只需获取元素列表的第一个元素

    // with id

    var ptag = jQuery('#id-of-p').clone().attr('id','');

    //  with className but first element

    var ptag = jQuery('.test-me').first(); or .eq(0);


    // with id, but should have .test-me class name, then only append?

    var ptag = jQuery('#id-of-p.test-me').clone().attr('id','');

Try
var ptag=jQuery('p.test-me').eq(0)jQuery('p.test-me').eq(0).insertBefore('.main content');
,为什么还要费心创建一个变量?
    // with id

    var ptag = jQuery('#id-of-p').clone().attr('id','');

    //  with className but first element

    var ptag = jQuery('.test-me').first(); or .eq(0);


    // with id, but should have .test-me class name, then only append?

    var ptag = jQuery('#id-of-p.test-me').clone().attr('id','');