Javascript 如何在没有工具栏、菜单栏的新窗口中打开url

Javascript 如何在没有工具栏、菜单栏的新窗口中打开url,javascript,html,Javascript,Html,在这里,我尝试使用window.open在新窗口中打开URL 我有一个带有URL的锚定标记列表,当我单击这些锚定标记时,javascript应该获得href=”“值并将该值传递给javascript函数 以下是我所做的代码: <html> <head> </head> <script> var a; function popitup(a) { window.open(a, 'open_window',

在这里,我尝试使用window.open在新窗口中打开URL

我有一个带有URL的锚定标记列表,当我单击这些锚定标记时,javascript应该获得href=”“值并将该值传递给javascript函数

以下是我所做的代码:

<html>
<head>
</head>
<script>
var a;
    function popitup(a)
    {
        window.open(a,
        'open_window',
        'menubar=no, toolbar=no, location=no, directories=no, status=no, scrollbars=no, resizable=no, dependent, width=800, height=620, left=0, top=0')
    }
</script>
<body>
<form name="popup" >
<a href="http://www.yahoo.com" onclick="popitup(this.value)">yahoo</a>
<a href="http://www.google.com" onclick="popitup(this.value)">Google</a>
<a href="http://www.msn.com" onclick="popitup(this.value)">MSN</a>
</form>
</body>
</html>

var a;
函数popitup(a)
{
打开窗户,
“打开窗口”,
'菜单栏=否,工具栏=否,位置=否,目录=否,状态=否,滚动条=否,可调整大小=否,相关,宽度=800,高度=620,左侧=0,顶部=0')
}
当我点击雅虎时,www.yahoo.com应该会在新窗口中打开。。同样所有

但现在,当我点击这些链接时,我在新窗口中看到错误“服务器未找到”


如何解决此问题?

您可以在
onclick
处理程序中使用
this.href
而不是
this.value
。锚定标记的
href
属性不是它的值。


<html>
<head>
</head>
<script>
var a;
    function popitup(a)
    {
        window.open(a,
        'open_window',
        'menubar=no, toolbar=no, location=no, directories=no, status=no, scrollbars=no, resizable=no, dependent, width=800, height=620, left=0, top=0')
    }
</script>
<body>
<form name="popup" >
<a href="http://www.yahoo.com" onclick="popitup(this.href)">yahoo</a>
<a href="http://www.google.com" onclick="popitup(this.href))">Google</a>
<a href="http://www.msn.com" onclick="popitup(this.href))">MSN</a>
</form>
</body>
</html>
var a; 函数popitup(a) { 打开窗户, “打开窗口”, '菜单栏=否,工具栏=否,位置=否,目录=否,状态=否,滚动条=否,可调整大小=否,相关,宽度=800,高度=620,左侧=0,顶部=0') }

您有以下问题

  • parms中的空间
  • 大多数浏览器会忽略status=no和更多,例如滚动条
  • 即使你打开了窗口,你也会跟随链接-返回false,或者如我所示,如果弹出窗口完成了任务,返回false,否则返回true
  • 不需要形式。链接不是表单元素,没有值,但href
  • 如果您没有弹出窗口阻止程序,并且没有“在选项卡中打开新窗口”,则此代码可能在您的浏览器中工作。如果有弹出窗口拦截器,链接仍然有效

    函数popitup(链接){
    var w=window.open(link.href,
    link.target | |“_blank”,
    '菜单栏=否,工具栏=否,位置=否,目录=否,状态=否,滚动条=否,可调整大小=否,相关,宽度=800,高度=620,左侧=0,顶部=0';
    return w?false:true;//如果弹出窗口被阻止,允许链接工作
    }

    基于mplungjan解决方案的ES6 Javascript最新更新

    document.addEventListener(“单击”,导航到,错误);
    函数导航到(事件){
    if(event.target.matches('a')){
    window.open(event.target.href,“_blank”,'menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=no,resizeable=yes,dependent,width=800,height=620,left=0,top=0');
    }
    event.preventDefault();
    返回false;
    }
    
    您需要运行此区域设置以检查代码段不允许弹出窗口

    这将弹出并跟随链接toolive demo notexist@FranciscoNúñez现在它不会保存到您的服务器并允许弹出窗口!代码执行允许它执行的操作,如下所示designed@FranciscoNúñez在讨论2020年这个脚本是否适合你之前,你介意不要投票否决一个7年的帖子吗?