使用 Javascript 将用户发送到浏览器的主页

Posted

技术标签:

【中文标题】使用 Javascript 将用户发送到浏览器的主页【英文标题】:Sending user to their browser's Home Page using Javascript 【发布时间】:2010-11-25 01:30:03 【问题描述】:

是否可以使用 javascript 获取浏览器的主页?

我想在一个页面上放置一个链接,该链接可以转到浏览器中设置的主页。

【问题讨论】:

【参考方案1】:

编辑:简化答案

识别浏览器并:

调用 window.home();适用于所有浏览器

调用 window.location.href = “关于家庭”; IE浏览器

为此,您可以使用http://jquery.thewikies.com/browser/

jQuery 浏览器插件是一个插件 对于 jQuery,它可以很容易地 唯一标识您的访问者的 浏览器。


其他解决方案:

 <script language="javascript">
    function gohome()
      if (typeof window.home == 'function') // The rest of the world
        window.home();
       else if (document.all)  // For IE 
        window.location.href = "about:home";
       else 
        document.write("<p>Please click on your browser's Home
button.</p>");
      
    
  </script>

这是via this website。海报指出,针对 Safari 存在问题。这可以使用this other website 修复。

使用那里解释的 CSS 技巧,您可以这样做:

<script type="text/javascript">
   isSafari3 = false;
   if(window.devicePixelRatio) isSafari3 = true;
</script>

并在上面的脚本中使用它来调用正确的函数:

if (typeof window.home == 'function' || isSafari3)

【讨论】:

现在看,这个答案似乎不是 100% 正确的。 about:home 似乎不适用于 IE 8,window.home() 仅适用于 Firefox(不是 Safari 或 Chrome)。 如果这对其他人有帮助:在从 FF 21 升级到 FF 22.0 后我刚开始维护的旧版 Web 应用程序出现了一个令人困惑的问题:它有一个带有 name="home" 和 JavaScript 的 iframe,例如 var url = top.home.location.href , 但这打破了,因为 home 显然是 Firefox 中的一个函数 [不能像 21.0 中那样被覆盖]。【参考方案2】:

默认主页(默认新标签页)网址:

谷歌浏览器:

https://www.google.com/_/chrome/newtab

Firefox 和 IE:

about:home

歌剧:

opera:speeddial

Safari:

http://livepage.apple.com

要查找浏览器的默认主页 URL,请转到主页并在控制台中键入 location.href。请注意,浏览器可能会将您重定向到您的语言环境,因此您需要在重定向之前找出页面(它发生在 Chrome 上)。


如果您使用此 browser detection 代码,您可以使用此单行代码获取正确的 url:

var homepageurl = browser == 'gc' ? 'https://www.google.com/_/chrome/newtab' : browser == 'op' ? 'about:speeddial' : browser=='sa' ? 'http://livepage.apple.com' : 'about:home'

浏览器检测代码JSFiddle:https://jsfiddle.net/oriadam/ncb4n882/

【讨论】:

【参考方案3】:

不确定是否有跨浏览器解决方案。在 IE 中你可以使用 HomePage 行为并调用navigateHomePage。

【讨论】:

【参考方案4】:

FF之类的:window.home();

对于 IE:location = "about:home";

【讨论】:

【参考方案5】:

window.home() 在 FF37 中对我不起作用,但这很好:

location.href = "about:home";

【讨论】:

以上是关于使用 Javascript 将用户发送到浏览器的主页的主要内容,如果未能解决你的问题,请参考以下文章

使用 JavaScript 从客户端浏览器上传到 Google Cloud Storage

JavaScript BOM Cookie 的使用

将浏览器 JavaScript 错误发送到 Stackdriver 错误报告

有没有办法将 CoffeeScript 发送到客户端的浏览器并将其编译为 JavaScript *there*?

如何忽略javascript时区将日期时间发送到服务器

如何将任何子域请求重定向到asp.net中的主域