使用javascript添加前后


Using javascript to add before and after

我想知道如何在某些元素之前和之后添加html元素例如:这是我在真实文件中添加的代码。

<ul class="abcd" id="abcd></ul>

那么,我该如何这样显示它(使用javascript);

<div class="blabla">
<div class="ABCD">
   <ul class="abcd" id="abcd></ul>
</div>
</div>
var yourVar; // some  DOM instance
var newFirstElem; //element which should be first in yourVar
yourVar.insertBefore(newFirstElem, yourVar.firstChild);

这将作为第一个孩子添加。只需使用普通追加即可添加。

编辑:

考虑一下你一开始就有这个:

  <div class="blabla">
     <div class="ABCD">
     </div>
  </div>

你想添加<ul class="abcd" id="abcd></ul>到带类的div ABCD

$(".ABCD").append('<ul class="abcd" id="abcd></ul>')

你想用blabla类添加到div

$(".blabla").append('<ul class="abcd" id="abcd></ul>')

考虑一下你已经有了这个

<div class="blabla">
         <div class="ABCD">
             <ul class="abcd" id="abcd></ul>
         </div>
      </div>

现在您想在div中的ul之前添加abcd 类

$(".abcd").prepend("<ul class="abcd" id="abcd></ul>");

jQuery使它更简单。您可以使用prepend函数。此函数允许您在开始时插入任何您喜欢的内容。还有在特定位置插入的选项。你应该看看:

insertAt

insertBefore

after

before

如果您有一个类似的html文件

<html>
<body>
<ul id="1"></ul>
</body>

你知道这个

<html>
<head></head>
<body>
    <div>
        <ul id="1"></ul>
    </div>
</body>

使用这个javascript

var x = document.getElementsByTagName("body")[0];
var b = document.getElementById("1");
var a = document.createElement("div");
x.appendChild(a);
a.appendChild(b);

我希望这就是您要查找的代码。。

<!doctype>
<html>
    <head>
        <title>Example - Javascript - Add element before/after</title>
        <script language="javascript">
        function mAddBegin()
        {
            var tNew = document.createElement('li');
            tNew.innerHTML = document.getElementById('value').value;
            var tList = document.getElementById('list');
            tList.insertBefore(tNew, tList.firstChild);
        }
        function mAddBefore()
        {
            var tNew = document.createElement('li');
            tNew.innerHTML = document.getElementById('value').value;
            var tList = document.getElementById('list');
            var tTea = document.getElementById('tea');
            tList.insertBefore(tNew, tTea);
        }
        function mAddAfter()
        {
            var tNew = document.createElement('li');
            tNew.innerHTML = document.getElementById('value').value;
            var tList = document.getElementById('list');
            var tTea = document.getElementById('tea');
            tList.insertBefore(tNew, tTea.nextSibling);
        }
        function mAddEnd()
        {
            var tNew = document.createElement('li');
            tNew.innerHTML = document.getElementById('value').value;
            var tList = document.getElementById('list');
            tList.appendChild(tNew);
        }
        </script>
    </head>
    <body>
        <ul id="list">
           <li>Coffee</li>
           <li id="tea">Tea</li>
           <li>Milk</li>
        </ul>
        <input type="text" id="value" />
        <input type="button" onclick="javascript: mAddBegin(); " value="Add begin" />
        <input type="button" onclick="javascript: mAddBefore(); " value="Add before 'Tea'" />
        <input type="button" onclick="javascript: mAddAfter();" value="Add after 'Tea'" />
        <input type="button" onclick="javascript: mAddEnd();" value="Add end" />
    </body>
</html>