我想知道如何在某些元素之前和之后添加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>