最近我用以下代码创建了一个小提琴 -
HTML
<button onclick="action();">click me<img src="http://dummyimage.com/200x200/000000/fff.gif&text=Image+1" width="200px" id="ImageButton1"></button>
JS
function action ( )
{
if(document.getElementById("#ImageButton1").src == 'http://dummyimage.com/200x200/000000/fff.gif&text=Image+1' )
document.getElementById("#ImageButton1").src = 'http://dummyimage.com/200x200/dec4ce/fff.gif&text=Image+2';
else
document.getElementById("#ImageButton1").src = 'http://dummyimage.com/200x200/000000/fff.gif&text=Image+1';
}
小提琴链接- http://jsfiddle.net/QVRUG/4/
此代码FF
在我的本地文件中运行,但在控制台html
中引发错误-chrome
Uncaught ReferenceError: action is not defined
我进一步调查了错误并发现 -
在 onload 函数中定义的函数的未捕获 ReferenceError
所以我也试过这个 -
window.action = function(){...code here...};
但没有运气:(
请让我知道这种行为为什么它不能在 chrome 中工作并为其他人工作。请不要只提供一个补丁来使小提琴工作,因为我也对这种行为感兴趣。描述性答案(带有进一步研究的相关链接)非常感谢这个案例,这样我就可以在我的其余项目中正确移动。
如果问题不在正轨上,请告诉我,我会记下它(尽管我尽我最大的努力使问题清晰明了)