我的代码应该创建一个新游戏,您可以自定义您的学生,而其他则不能。这不是问题,当您加载游戏或完成自定义后,会出现错误。无论出于什么原因,我的图片都无法加载。它甚至也不会编辑我要更改的元素。这是应该工作的更新/运行代码:
function startUp() {
if (saving) {
$('#newGame-settings').fadeOut(500);
setTimeout(function() {
$("#mainScreen").fadeIn(1500);
}, 500);
saving = false;
} else {
$('#Start_Menu_Container').fadeOut(500);
setTimeout(function() {
$("#mainScreen").fadeIn(1500);
}, 500);
}
var container = "";
for (var i = 0; i < students.length; i++) {
container += ("<div class='studentListC' style='background-image: url(\"" + students[i].imgSrc + "\")'>" + students[i].name + "</div>");
}
var studentList = document.getElementById("studentList");
studentList.innerHTML = container;
}
它应该只显示它的主屏幕,然后编辑studentList id元素。它没有。如果有人可以帮助我,那就太好了!
另外,可能有用的一点是,如果我这样做了,它将添加到mainScreen id(studentList的父元素)中,除了图片仍然没有显示之外,它的工作方式还可以。因此,样式中的字符串也可能有错误。
链接到所有代码:http://jsbin.com/joneyi/edit?html,css,js,output
最佳答案
关于不填充studentList元素的问题,它实际上是在填充studentList元素,而不是您想要的那个(在页面上仍然有一个名为studentList的隐藏div。我相信您只需要确保自己是选择mainPage元素下的studentList元素(请原谅我未提供执行此操作的代码,但我对javascript语法有些不满。)
至于图像,我认为问题是嵌套的双引号:
<div class="studentListC" style="background-image: url("https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcQy51udfhp-M17O5xe9wdQNpzq-Rf34cLMcCZ9hqkOIF2PEyKKa")">Brayton</div>
我看到您的代码实际上是对整个style属性使用单引号,但是我认为它们可能会在某处转换为双引号(可能是隐式转换?)。无论如何,请尝试使用单引号将url值括起来。