1

我想在我的 html 页面上加载一个包含 div 内容的脚本。我知道这是可能的,但我很难理解如何去做。这是我的html:

<html>
<body>
<script src="script.js"> </script>
<div id="helloWorld"> </div>
</body>
</html>

script.js 必须是什么才能让 html 页面显示某些内容?我在想这样的事情(我知道这是不正确的,我是 javascript 的初学者。

function showText()
{
    $("#helloWorld").html("<p> Hello World! </p>")
    $("#helloWorld").show();

}
showText()

有人可以告诉我我是否走在正确的轨道上,以及我该如何解决这个问题?谢谢,山姆

4

4 回答 4

3

你的代码是 jQuery:

$("#helloWorld").html("<p> Hello World! </p>")
$("#helloWorld").show();

你不需要$("#helloWorld").show();.

在纯 JavaScript 中,

function showText()
{
    document.getElementById("helloWorld").innerHTML="<p> Hello World! </p>";
}
showText()

showText()但记得在 DOM 中加载 div 后调用!(例如,在</body>标签之前调用它)。

然后,

<html>
<head>
...
<script type="text/javascript" src="script.js"></script>
...
</head>
<body>
...
<script type="text/javascript">
showText();
</script>
</body>
</html>

和 script.js:

function showText(){
    document.getElementById("helloWorld").innerHTML="<p> Hello World! </p>";
}
于 2012-08-16T14:50:52.507 回答
1

我认为它什么都不做(我假设)因为你的脚本标签在 div 本身之前。如果您使用的是 JQuery,则应将初始代码放入 ready 函数中,在您的情况下:

$(document).ready(function(){
  showText();
});
于 2012-08-16T14:51:53.913 回答
1

当您的脚本加载时,HTML 元素 " #helloWorld" 仍然不存在。

像这样使用$(document).ready

function showText() {
    $("#helloWorld").html("<p> Hello World! </p>")
    $("#helloWorld").show();
}
$(document).ready(function() {
    showText();
});
于 2012-08-16T14:52:12.043 回答
0

您尝试使用的语法需要 JQuery。你可以在这里下载最新的 JQuery 库 http://jquery.com/

然后您可以使用以下命令向您的 div 添加文本:

$(document).ready(function(){
  var showText = function(){
    $("#helloWorld").html("<p> Hello World! </p>")  
    $("#helloWorld").show();
  };    
  showText();
});

编辑:我在(文档)开头添加了 $ 字符,此外,没有必要.show()在您的 div 上具有该功能,因为它已经可见。但是,如果您确实将该 div 的显示设置为无,则应该使用.show()来显示该 div。

于 2012-08-16T14:53:52.133 回答