我对javascript更新,现在我开始使用javascript。
这是链接(以示例运行):
http://www.w3schools.com/js/tryit.asp?filename=tryjs_intro_lightbulb
在这里,我提出了一个疑问,
if (image.src.match("bulbon")) {
//do stuff
}
我可以知道,为什么我们使用“bulbon”是什么?
我尝试了另一个例子,这是我的代码:
<img width="300px" height="300px" src="dim-bulb.jpg" id="bulb" onclick="changebulb()" alt=bulb"/>
<script>
function changebulb() {
var image=document.getElementById("bulb");
if(image.src.match("bulbon")) {
image.src="dim-bulb.jpg";
}
else {
image.src="bright.jpg";
}
}
当我运行我的代码时,它部分工作,即当我点击时,它会变亮,但我再点击它并没有显示为昏暗..
我可以知道我的错误是什么吗?
提前致谢。
答案 0 :(得分:2)
在你的if条件
if(image.src.match("bulbon"))
您正在尝试匹配您的gif中的bulbon
,而且这两个gif都没有bulbon
命名。
应该是
if(image.src.match("bulbon"))
image.src="dim-bulb.jpg";
}
else {
image.src="bulbon.jpg"; }
或者像这样正确检查明亮的图像:
if(image.src.match("bright")) {
image.src="dim-bulb.jpg";
}
else {
image.src="bright.jpg";
}
答案 1 :(得分:1)
bulbon =灯泡
下面的代码只检查正在使用的图像是否为灯泡,并用off版本替换图像。
var image = document.getElementById('myImage');
if (image.src.match("bulbon")) {
image.src = "pic_bulboff.gif";
} else {
image.src = "pic_bulbon.gif";
}
要修复代码,请将其更改为:
function changebulb() {
var image=document.getElementById("bulb");
if(image.src.match("bright")) {
image.src="dim-bulb.jpg";
}
else {
image.src="bright.jpg";
}
}
答案 2 :(得分:1)
“bulbon”是文件名pic_bulbon.gif
的一部分,但不是pic_bulboff.gif
,因此if(image.src.match("bulbon")) {
正在测试灯泡当前是否已开启。
它部分有效的原因是因为您重命名了文件 - 让它再次运行,只需将bulbon
替换为bright
:
<img width="300px" height="300px" src="dim-bulb.jpg" id="bulb" onclick="changebulb()" alt=bulb"/>
<script>
function changebulb() {
var image=document.getElementById("bulb");
if(image.src.match("bright")) {
image.src="dim-bulb.jpg";
}
else {
image.src="bright.jpg";
}
}
答案 3 :(得分:1)
bulbon
是您在看到明亮光线时在图片标记的src
中找到的图像名称。
因此,点击它后,您会检查src
并将src
更改为其他图片,然后说bulboff
。
您的代码应该是:
function changebulb() {
// get the element with id 'bulb'
var image=document.getElementById("bulb");
// check the src attribute of the image tag
if(image.src.match("dim-bulb")) {
image.src="bright.jpg"; // change the src attribute
} else {
image.src="dim-bulb.jpg"; // change the src attribute
}
}
答案 4 :(得分:0)
试试这个:
var image=document.getElementById("bulb");
if(image.src.match("dim-bulb")) {
image.src="bright.jpg";
}
else {
image.src="dim-bulb.jpg";
}
答案 5 :(得分:0)
<img width="300px" height="300px" src="dim-bulb.jpg" id="bulb" onclick="changebulb()" alt=bulb"/>
<script>
function changebulb() {
var image=document.getElementById("bulb");
if(image.src.match("dim-bulb.jpg")) {
image.src="bright.jpg";
}
else {
image.src="dim-bulb.jpg";
}
}
</script>
我认为这可能是你问题的答案。