这是我写的:
var img_current = 0;
var image0 = new Image()
image0.src = "img/image_centrale/1_house_0.jpg"
var image1 = new Image()
image1.src = "img/image_centrale/1_house_1.jpg"
var image2 = new Image()
image2.src = "img/image_centrale/1_house_2.jpg"
function affich_centrale()
{
if (house_bought == 1 && neighborhood_bought == 0)
{
img_current = 1;
document.images.main.src = eval("image" + img_current + ".src").innerHTML = 'image_centrale';
}
else if (house_bought == 2 && neighborhood_bought == 0)
{
img_current = 2;
document.images.main.src = eval("image" + img_current + ".src").innerHTML = 'image_centrale';
}
else{}
这将继续,但我认为你得到了主旨。我的代码出了什么问题?这些图像不会随着我的#house.hought"而变化。变量变化。
在我的HTML部分中,我简单地说:
<div id="image_centrale">
<img src="img/image_centrale/1_house_0.jpg" name="main" />
</div>
注意:这是即将推出的完整html / js游戏网站。
答案 0 :(得分:0)
为什么同时使用src
和innerHTML
?您只需要src
,而且也不需要eval
。试试这个:
<div id="image_centrale">
<img src="" name="main" />
</div>
<script type="text/javascript">
var img_current = 0;
var house_bought = 1;
var neighborhood_bought = 0;
var image0 = new Image()
image0.src = "img/image_centrale/1_house_0.jpg"
var image1 = new Image()
image1.src = "img/image_centrale/1_house_1.jpg"
var image2 = new Image()
image2.src = "img/image_centrale/1_house_2.jpg"
function affich_centrale() {
if (house_bought == 1 && neighborhood_bought == 0) {
img_current = 1;
document.images.main.src = image0.src;
}
else if (house_bought == 2 && neighborhood_bought == 0) {
img_current = 2;
document.images.main.src = image1.src;
}
else { }
}
affich_centrale();
</script>
在这个代码示例中,我对变量的值进行了硬编码,以使其成为一个工作示例,因此您将始终看到第一个图像。改变它以满足您的需求。