我读了一本关于javascript的书,它说当我们创建一个打开新窗口的函数时,对新窗口对象的引用存储在分配给window.open(theURL , newWindow)
调用的变量中。它还说如果两个或多个URL使用相同的变量,无论我点击哪个URL,都会在同一个窗口中打开。但是,如果我为两个window.open()
调用创建两个变量,则两个站点将在不同的(新)窗口中打开。
由于好奇心,我尝试使用两个不同的变量,但是当我点击两个链接时,它们仍然在同一个窗口中加载。怎么会?我在Firefox,IE和Chrome上试过它都无济于事。
答案 0 :(得分:3)
这本书部分正确,但你真正需要的是两个不同的值,而不是两个不同的变量。如果有两个具有相同值的变量,则结果与使用相同变量的结果相同。重要的是价值,而不是用来提供价值的变量。
open
方法的第二个参数是目标。如果使用类似'win42'
的值,则将用作窗口的名称。如果再次使用相同的目标值调用open
,它将在同一窗口中打开。
您可以使用特殊值'_blank'
作为目标,以便始终打开一个新窗口。