将文本/元素附加到DIV标记

时间:2011-09-19 20:49:51

标签: javascript html dom

如何在页面加载时使用getElementById(没有)向目标元素(div)添加文本/元素?

这是我目前的标记:

<html>
<head>
<title>test</title>

<script language="javascript">


/document.getElementById('content').innerHTML = 'Fred Flinstone';

</script>
</head>

<body>

<div id="content">
dssdfs

</div>


</body>
</html>

3 个答案:

答案 0 :(得分:0)

最快(尽管不是最好)的方法是将脚本块放在HTML文件的末尾(在您要修改的<div>之后)。

更好的方法是注册DOM加载通知

如果您希望在页面加载后执行它,那么您需要观察DOM加载的事件。您可以通过在脚本块中订阅DOM加载事件,然后将操作DIV的代码放在事件处理程序中来实现。

棘手的部分是,不同的浏览器可能需要稍微不同的方式来注册以在加载DOM时通知(这是jQuery或不同的库变得有用)

这里有一些关于在加载DOM时注册要调用的回调的不同方法的更多信息。随着更流行的浏览器的现代版本现在变得更符合标准,信息可能有点过时:http://www.javascriptkit.com/dhtmltutors/domready.shtml

答案 1 :(得分:0)

我认为正在发生的事情是您的脚本在文档准备好之前正在执行。尝试将您的javascript放入正文加载事件中。

答案 2 :(得分:0)

<script type="text/javascript">
    function dothis()
    {
        document.getElementByID('content').innerHTML = 'Fred Flinstone';
    }
</script>

<body onLoad="dothis()">
    ...
</body>