2

当我使用 document.createElement 时,javascript 会在正文底部添加一个元素。如何在某个位置添加元素?(使用 document.createElement 属性,我的意思是存储在一个新变量中)

4

5 回答 5

2

当我使用 document.createElement 时,javascript 会在正文底部添加一个元素。

不,返回一个元素,但它没有附加到任何东西。你需要自己做:

var ptag = document.createElement('p');
ptag.innerHTML = "hello world";
var someplace = document.getElementById('some_element_id');
someplace.appendChild(ptag);

那是普通的js;jquery 技术更简洁。

于 2012-04-24T14:24:13.167 回答
2
<html>
<head>
</head>
<script type="text/javascript">
var my_div = null;
var newDiv = null;

function addElement()
{

  newDiv = document.createElement("div");
  newContent = document.createTextNode("test");
  newDiv.appendChild(newContent);


  my_div = document.getElementById("org_div1");
  document.body.insertBefore(newDiv, my_div);
}

</script>

<body onload="addElement()">
<div id='org_div1'> The text above has been created dynamically.</div>
</body>
</html>
于 2012-04-24T14:23:00.657 回答
1

您可以使用 jquery 在任何 DOM 元素的开头或结尾添加 dom/Element。

请参阅下面的示例

​</p>

<!-- HTML CODE -->
<div id="item">
this is only test
</div>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

JQUERY 脚本:

$(document).ready(function(){

    var item = "<span>New item</span>"
    /* PrependTo */
    $(item).prependTo('#item');

    /* AppendTo */
    $(item).appendTo('#item');


});
​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

请参阅此处此处的 jquery 文档

于 2012-04-24T14:31:31.623 回答
0

嗯,我可能是错的,但如果您使用 jQuery,您是否正在寻找类似的东西:

var newDiv = $("<div />");

此外,如果您有一个 jQuery 元素列表(一个对象数组),例如$(".divs")which procs [[Object Object], [Object Object]](而每个 [Object Object] 是一个包含 class 的 div 元素.divs),您可以向该列表添加一个新元素(无需粘贴到 html body 直到你 rdy ) 通过做

$(".divs").add(newDiv);
于 2012-04-24T14:21:01.813 回答
0

只需将元素添加为另一个元素的子元素。

例如:

HTML

<body>
<div id="container"></div>
...
[page content here]
...
</body>

JS

newdiv = $("<div>something</div>");
$("#container").append(newdiv);

参见文档append

于 2012-04-24T14:22:59.160 回答