我是javascript的新手。我有一个这样的脚本:
<html>
<head>
<script type="text/javascript">
var x= '<img id="im" src="thumbnail.gif">';
switch (x)
{
case x=='document.getElementById("im")':
document.getElementById('im').outerHTML='<img id="im" src="fullsize.gif">';
break;
case x!='document.getElementById("im")':
document.getElementById('im').outerHTML='<img id="im" src="thumbnail.gif">';
break;
default: x;
}
</script>
</head>
<body>
<span onclick="switch()">
<img id="im" src="thumbnail.gif">
</span>
</body>
</html>
我需要保持简单,但也可以使用切换功能。我的脚本没有使用它们。我也不是在寻找幻灯片。
答案 0 :(得分:0)
首先,您不希望'document.getElementById("im")'
周围的引号,因为这意味着您正在寻找该字符串。两个案例陈述不起作用,语法是case value
,而不是case expression
(表达式是你的==
)。三,你没有实际的函数调用。你正在呼叫switch
但没有做任何事......
尝试类似:
function swap(){
switch(document.getElementById('im').outerHTML){
case x:
...
break;
default:
...
break;
}
}
...
<span onclick="swap();">
应修复现有代码。或者“正确”的做法更像是:
function swap(){
var node = document.getElementById('im');
node.src = node.src.indexOf('fullsize')>=0 ? 'thumbnail.gif' : 'fullsize.gif';
}
...
<span onclick="swap();">
哦,我修复了你原来的问题。