隐藏浏览器的地址栏(弹出窗口)

时间:2013-04-10 12:39:38

标签: javascript navigationbar address-bar

我必须隐藏浏览器的地址栏。我正在使用此代码:

var winFeature =
        'location=no,toolbar=no,menubar=no,scrollbars=yes,resizable=yes';
window.open('Result.html','null',winFeature);  

在许多解决方案中,只有location=no属性可以隐藏地址栏(在IE和Chrome中)。但是,这对我不起作用(即使在IE和Chrome中)。

最后,我找到了一个MSDN article,其中描述了location=no如何隐藏后退/前进/停止导航按钮,并使地址栏为只读

是否有任何解决方案可以忽略上述MSDN文章来隐藏整个地址栏?我正在IE和Google Chrome中进行测试。

11 个答案:

答案 0 :(得分:62)

  

真相是什么?

Microsoft描述其浏览器行为的文档是正确的。

  

是否有隐藏地址栏的解决方案?

没有。如果你可以隐藏它,那么你可以使用HTML / CSS来制作看起来像普通地址栏的东西。然后你可以在其中添加一个不同的地址。然后,您可以诱骗人们认为他们在不同的网站上并为其输入密码。

隐藏用户的位置是不可能的,因为他们知道自己的位置对安全至关重要。

答案 1 :(得分:32)

由于安全限制,现代浏览器不再可能这样做了。

官方(-ish)来源:

  • Firefox

      

    在Firefox 3中,dom.disable_window_open_feature.location现在默认为true,强制存在位置栏,就像在IE7中一样。有关更多信息,请参阅错误337344。

  • Internet Explorer 7 and later

      

    在Internet Explorer 6中,location指定是否显示地址栏。

    (暗示行为以IE6结束)

  • Chrome/Chromium

      

    Chrome中会忽略这些工具栏隐藏参数。   您还会注意到,现代浏览器正朝着不将其隐藏为安全/反网络钓鱼措施的方向发展。   另请参阅https://bugzilla.mozilla.org/show_bug.cgi?id=337344

答案 2 :(得分:10)

寻找相同的,我唯一能做的就是

在应用模式下启动 Google Chrome

Chrome.exe --app="<address>"

从运行提示符开始。例如:

Chrome.exe --app="http://www.google.com"

隐藏 Mozilla Firefox

中的地址栏

在地址栏中输入about:config,搜索:

dom.disable_window_open_feature.location

并将其设为false

因此,当您打开一个弹出窗口时,它将在隐藏地址栏的情况下启动。例如:

window.open("http://www.google.com",'','postwindow');

Firefox without location bar

Chrome in app mode

现在,我正在寻找与Microsoft Edge类似的东西,我还没有找到任何针对此浏览器的内容。

答案 3 :(得分:7)

每个浏览器都有所不同。

几年前,你尝试过的,是对的。但是现在它被视为一种安全风险,人们无法看到浏览器地址栏和(因为网络钓鱼的原因),因此他们(或大多数人)决定始终显示浏览器地址栏。这在我眼里是好的。

答案 4 :(得分:2)

无法隐藏浏览器的地址栏。

答案 5 :(得分:1)

没有明确的方法可以做到这一点。 JS可能有API,但浏览器供应商可能选择不实现它或以其他方式实现它。

另外,据我记忆,Opera甚至提供用户首选项来阻止JS进行此类更改,例如移动窗口,更改状态栏内容以及类似内容。

答案 6 :(得分:1)

你可能无法隐藏它,但如果你正在寻找额外的空间,我所做的和似乎工作的是一件非常简单的事情,地址栏的高度为60px,所以这是我的解决方案。

@media only screen and (max-width: 1024px){ // only from ipads down
  body{
    padding-bottom: 60px; // push your whole site same height upwards. ;)
  }
}

答案 7 :(得分:-1)

你可以用visual Basic做到这一点,在表单上放置一个Webbrowser控件,加载一个用Location=no打开弹出窗口的html,它将打开一个没有地址栏的新浏览器。可能不是你想要的东西,只是想把它扔进去:)

答案 8 :(得分:-1)

您可以将网页向下滚动到无法看到地址栏的位置,如果用户滚动,页面应返回到您的设置位置。 通过这种方式,移动浏览器向下滚动时,将尝试为您提供全屏体验。所以它会隐藏地址栏。 我不知道代码,其他人可能会提出代码。

答案 9 :(得分:-2)

我就是这样做的弹出式窗口,虽然它只适用于IE11,而不是Chrome在Firefox中测试过。

window.open(url, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no');

答案 10 :(得分:-3)

在版本20.10240.16384.0的Edge浏览器中,您可以通过在window.open功能中设置location = no来隐藏地址栏。