如何解决Javascript-相等的函数的行为方式不同
如果在html中单击了test.jpg(鼠标左键),
对于代码1 :在新标签页中将打开一个空白页面。 (不好的结果)
代码1 :使用了opek.window(等于打开到open.window)
<script>
window.opek = function(x,y,z){window.open(x,z)}
function onlyyou(url){
var NowWindow=window.opek('','_blank','')
NowWindow.document.write('<img src='+url+'>')
}
</script>
<img src="test.jpg" onclick="onlyyou(this.src)">
代码2 :使用open.window
<script>
window.opek = function(x,z)}
function onlyyou(url){
var NowWindow=window.open('','')
NowWindow.document.write('<img src='+url+'>')
}
</script>
<img src="test.jpg" onclick="onlyyou(this.src)">
对我来说, window.opek 等于 window.open 。
但是为什么代码1 的行为方式不同?
实际上,我创建了一个包含window.open的函数。创建的函数无法正常工作。因此,我进行了深入研究,甚至找出了一个功能(至少对我而言)看起来完全相同(至少对我而言)的功能无法以相同的方式工作。
解决方法
这是因为在您的代码1 中,您没有返回window
对象返回。将您的功能更新为返回新窗口,它将起作用:
<script>
window.opek = function(x,y,z){ return window.open(x,z); }
function onlyyou(url){
var NowWindow=window.opek('','_blank','')
NowWindow.document.write('<img src='+url+'>')
}
</script>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。