最近我用以下代码创建了一个fiddle——
我进一步调查了这个错误并发现 - “在onload函数中定义的函数引用错误”。
因此,我也尝试了以下方法 -
但是没有运气 :(
请告诉我为什么这种行为在Chrome中无法正常工作,而其他浏览器可以。请不要仅仅提供一个修补程序让fiddle工作,因为我还对这种行为感兴趣。在这种情况下,有描述性的答案(带有相关链接以便进一步学习)会受到赞赏,这样我就可以在我的项目中正确地进行移动。
如果问题不正确,请告诉我,我会将其删除(尽管我已经尽力使问题干净明了)。
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';
}
Fiddle链接 - http://jsfiddle.net/QVRUG/4/
这段代码可以在我的本地html
文件和FF
中运行,但在chrome
控制台中会报错 -
Uncaught ReferenceError: action is not defined
我进一步调查了这个错误并发现 - “在onload函数中定义的函数引用错误”。
因此,我也尝试了以下方法 -
window.action = function(){...code here...};
但是没有运气 :(
请告诉我为什么这种行为在Chrome中无法正常工作,而其他浏览器可以。请不要仅仅提供一个修补程序让fiddle工作,因为我还对这种行为感兴趣。在这种情况下,有描述性的答案(带有相关链接以便进一步学习)会受到赞赏,这样我就可以在我的项目中正确地进行移动。
如果问题不正确,请告诉我,我会将其删除(尽管我已经尽力使问题干净明了)。