我试图让我的显示字符串显示我的对象。我是javascript的新手,所以它可能是一个简单的答案!
<script type="text/javascript">
function displayString(){
var hunterLibrary = {
"Title": "Hunter Library",
"Latitude": 35.313316,
"Longitude": -83.179788
};
var hFRBuilding = {
"Title": "HFR Building",
"Latitude": 35.308959,
"Longitude": -83.186385
};
var downtownDillsboro = {
"Title": "Downtown Dillsboro",
"Latitude": 35.36949,
"Longitude": -83.252764
};
displayString =
"" + hunterLibrary.Title + "</b><br/>" +
"Latitude: " + hunterLibrary.Latitude + "<br />" +
"Longitude: " + hunterLibrary.Longitude + "<br />" +
"" + hFRBuilding.Title + "</b><br/>" +
"Latitude: " + hFRBuilding.Latitude + "<br />" +
"Longitude: " + hFRBuilding.Longitude + "<br />" +
"" + downtownDillsboro.Title + "</b><br/>" +
"Latitude: " + downtownDillsboro.Latitude + "<br />" +
"Longitude: " + downtownDillsboro.Longitude + "<p></p>";
console.dir(hunterLibrary);
console.dir(hFRBuilding);
console.dir(downtownDillsboro);
document.getElementById("divDisplay").innerHTML = displayString;
}
</script>
</head>
<body>
<h1><b>Exercise 14: Creating and Using Javascript Objects</b></h1>
<br />
<div id="divDisplay"></div>
</body>
</html>
我只需要让它显示加载页面的第二个字符串。目前它只是显示标题而没有别的。
答案 0 :(得分:1)
在<script>displayString()</script>
<div id="divDisplay"></div>
<body>
<h1><b>Exercise 14: Creating and Using Javascript Objects</b></h1>
<br />
<div id="divDisplay"></div>
<script>displayString()</script>
</body>
</html>
答案 1 :(得分:0)
什么都没有调用你的功能。 :)你所做的是声明函数存在;你已经教过页面如何来显示你的字符串,但你实际上并没有要求它这样做。
尝试
window.onload(function() { displayString() });
PS-此外,如果您刚刚进入javascript,请访问:www.jquery.com并了解它。我自学编码(在某些方面我仍然很业余)并且长时间搁置学习图书馆,自己思考“我必须学会以正确的方式做到这一点......”。作为一个学术练习,是的,学习你的基础知识。但是如果你想真正完成某些事情,那就去学习jQuery吧,因为互联网告诉你的所有关于javascript在过去5 - 8年里可以做些什么的事情都是jQuery和类似的库可以做的事情。你可以构建你自己的砖块然后建造你的房子,但如果你还想在你老了之前住在它里面的话。 ;)
试试这个版本的功能;有更小的拼写错误(如果在正确调用函数之后,很可能是你的答案),那就更清晰,更容易了解:
function displayString(){
var buildings = {
hunterLibrary:{
"Title": "Hunter Library",
"Latitude": 35.313316,
"Longitude": -83.179788
},
hFRBuilding: {
"Title": "HFR Building",
"Latitude": 35.308959,
"Longitude": -83.186385
},
downtownDillsboro: {
"Title": "Downtown Dillsboro",
"Latitude": 35.36949,
"Longitude": -83.252764
}
};
// save saves you the typing, and easier to debug
var EOL = "</b><br />"
var lat = "latitude";
var long ="longitude";
var displayString = '';
for (b in buldings) {
displayString += b.Title + EOL + lat + b.Latitude + EOL + long + b.Longitude + EOL;
};
document.getElementById("divDisplay").innerHTML = displayString;
console.dir(buildings);
}
你的文件应该去:
<html>
<head></head>
<body>
<!---- all your page ------>
<script>
//the function
window.onload( displayString() );
</script>
答案 2 :(得分:0)
首先,让您的<script>
先加载DOM。将<script>
放在divDisplay
下。问题是脚本无法找到div的位置并发出错误。
其次,避免声明相同的变量或函数名称。