这句话是什么意思:“相同 name 的窗口只能创建一个,要想创建多个窗口则 name 不能相同。”

来源:2-5 JavaScript-打开新窗口(window.open)

qq_QG_0

2016-11-13 18:12

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>window.open</title>
<script type="text/javascript">
  function Wopen(){
    window.open('http://www.imooc.com','_top','width=600,height=400,top=100,left=0,menubar=no,toolbar=no, status=no,scrollbars=no');  

  } 
</script>
</head>
<body>
    <input name="button" type="button" onClick="Wopen()" value="点击我,打开新窗口!" / >
</body>
</html>


写回答 关注

4回答

  • TearTire
    2017-01-21 18:25:33

    name参数是可选的。用于指定target属性或窗口的名称。

    target属性为_blank(默认)_self/_top(此时并没有给窗口命名,只是按照target属性打开网站)。

    如果name参数的值不是上述target属性,则为窗口名称,如"_set1/_set2"。“相同name的窗口只能创建一个”意思是一个name对应一个窗口,相同name并不会报错,只是网站都会在同一个窗体(name对应的窗体)中打开,后打开的网站会替换掉先打开的网站。如果希望不同的网站同时显示在不同的窗体中,需要不同的name创建多个窗体。


  • 幻想
    2016-12-18 11:33:41

    _blank和_self这些是参数你可以看做是命令或者设置(我反正是这样理解的),设置打开的窗口在浏览器里面是 新建一个 还是 用当前窗口跳转,而name就是打开的窗口的名字。

  • 逝去的WASD
    2016-11-13 18:48:54

    可以有很多个窗口,但是这些窗口的name属性不能出现相同的

    慕用9345...

    我自己随便乱写了个名字为什么还是在新窗口打开?如果我都想设计在新窗口打开不都是_blank啊,不十就name相同了啊?

    2016-12-01 21:10:09

    共 1 条回复 >

  • 暮女神
    2016-11-13 18:43:51

    打开新窗口window.open([URL], [窗口名称], [参数字符串])这个语句中,中间的  name在同一个HTML文件中都各不相同,如window.open('http://www.imooc.com','test' ,'width=300,height=200'),那么这个页面里你再定义其他的name就不能是test了.就是一个名称而已,别太在意

    qq_QG_...

    不对啊,name不是填写_blank,_self等这些东西的吗?而且按你那样说的,我故意两个弄命名一样的,没报错啊

    2016-11-13 20:37:53

    共 1 条回复 >

JavaScript入门篇

JavaScript做为一名Web工程师的必备技术,本教程让您快速入门

739817 学习 · 9566 问题

查看课程

相似问题