Javascript-equal函数的行为方式不同

Javascript-equal函数的行为方式不同,javascript,function,window.open,Javascript,Function,Window.open,如果在html中单击test.jpg(鼠标左键) 对于代码1:在新选项卡中打开空白页。(坏结果) 对于代码2,test.jpg页面将在新选项卡中打开。(好的) 代码1:使用opek.window(等于打开打开.window) window.opek=函数(x,y,z){window.open(x,y,z)} 仅函数you(url){ var NowWindow=window.opek('',''空白','') NowWindow.document.write(“”) } 代码2:用于打开.

如果在html中单击test.jpg(鼠标左键)

对于代码1:在新选项卡中打开空白页。(坏结果)

对于代码2,test.jpg页面将在新选项卡中打开。(好的)


代码1:使用opek.window(等于打开打开.window)


window.opek=函数(x,y,z){window.open(x,y,z)}
仅函数you(url){
var NowWindow=window.opek('',''空白','')
NowWindow.document.write(“”)
}
代码2:用于打开.window

<script>
window.opek = function(x,y,z){window.open(x,y,z)}

function onlyyou(url){
var NowWindow=window.opek('','_blank','')
NowWindow.document.write('<img src='+url+'>')
}

</script>

<img src="test.jpg" onclick="onlyyou(this.src)">
<script>
window.opek = function(x,y,z){window.open(x,y,z)}

function onlyyou(url){
var NowWindow=window.open('','_blank','')
NowWindow.document.write('<img src='+url+'>')
}

</script>

<img src="test.jpg" onclick="onlyyou(this.src)">

window.opek=函数(x,y,z){window.open(x,y,z)}
仅函数you(url){
var NowWindow=window.open('',''空白','')
NowWindow.document.write(“”)
}
对我来说,它看起来是窗口。opek等于窗口。open

但是为什么代码1的行为方式不同呢


实际上我创建了一个函数,包含window.open。创建的函数无法正常工作。因此,我反复研究,发现即使是看起来完全相同(至少对我来说)的函数也不会以相同的方式工作。

这是因为在代码1中,您没有返回
窗口
objectback。将您的函数更新到“返回”新窗口,它将工作:

<script>
  window.opek = function(x,y,z){ return window.open(x,y,z); }

  function onlyyou(url){
    var NowWindow=window.opek('','_blank','')
    NowWindow.document.write('<img src='+url+'>')
  }

</script>

window.opek=函数(x,y,z){返回window.open(x,y,z);}
仅函数you(url){
var NowWindow=window.opek('',''空白','')
NowWindow.document.write(“”)
}