无法通过javascript更改div中的图像
这是我的密码:无法通过javascript更改div中的图像,javascript,html,css,Javascript,Html,Css,这是我的密码: <!DOCTYPE html> <html> <body> <script> function light() { if (document.getElementById("push").value == "OFF") { document.getElementById("bulb").style.backgroundImage = url("1.png"); documen
<!DOCTYPE html>
<html>
<body>
<script>
function light() {
if (document.getElementById("push").value == "OFF") {
document.getElementById("bulb").style.backgroundImage = url("1.png");
document.getElementByID("push").value = "ON";
}
else {
document.getElementById("bulb").style.backgroundImage = url("2.png");
document.getElementByID("push").value = "OFF";
}
}
</script>
<center>
<input type="button" id="push" onclick="light()" value="OFF" />
<div id="bulb" style="background-image:url(2.png);width:320px;height:420px">
</div>enter code here
</center>
</body>
</html>
功能灯(){
if(document.getElementById(“push”).value==“OFF”){
document.getElementById(“bull”).style.backgroundImage=url(“1.png”);
document.getElementByID(“push”).value=“ON”;
}
否则{
document.getElementById(“bull”).style.backgroundImage=url(“2.png”);
document.getElementByID(“push”).value=“OFF”;
}
}
在这里输入代码
此行:
document.getElementById("bulb").style.backgroundImage = url("1.png");
尝试调用名为url
的函数并向其传递字符串,然后将结果分配给backgroundImage
属性
相反,您希望直接为backgroundImage
分配一个字符串:
document.getElementById("bulb").style.backgroundImage = "url(1.png)";
// Note ------------------------------------------------^----^----^^
例如:
document.getElementById(“灯泡”).style.backgroundImage=“url(https://lh3.googleusercontent.com/-qJYMzFfIels/AAAAAAAAAAI/AAAAAAAAAGM/16Ir8NxI3gE/photo.jpg?sz=32)";代码>
当你提问时,文本区右侧有一个大橙色的“如何设置格式”框,其中包含有用的信息。还有一个完整的格式化工具条。还有一个[?]按钮提供格式化帮助。还有一个预览区,位于文本区和“发布你的问题”按钮之间(这样你就必须滚动过去才能找到按钮,以鼓励你查看),显示你的帖子发布时的样子。让你的帖子清晰明了,并证明你花了时间这样做,可以提高你获得好答案的机会。javascript!=java。我已经修复了格式设置并删除了不相关的标记,但由于这是您的第三个问题,我希望您现在至少可以进行最低限度的格式设置。请注意大小写-getElementById
与getElementById
不同,谢谢PeterLawrey。我是新来的,所以需要一点时间。div是否有可能既有id又有class?@SujeetAgrahari:当然(例如,在我的第二个示例中,div
一旦代码运行就会有)。它也可以有多个类。谢谢@T.J.Crowder!