假设我的默认操作系统浏览器是 Chrome。我正在使用其他浏览器(Mozilla 或 IE)访问 Gmail。收到的一封邮件中有一个网页链接。当我点击该链接时,该链接会在已运行的浏览器实例的另一个选项卡中打开。
总而言之,它忽略了默认的操作系统浏览器设置。
即使您将 gmail 替换为 Outlook 并更改浏览器,也会出现同样的行为(Web 链接始终在已运行的浏览器的新选项卡中启动。
这种行为能解释吗?
坦率地说,我可以接受这种行为,但需要一些技术解释,以便我可以向愤怒的客户解释。
答案1
我稍微简化了一下,但基本内容如下:
任何网络内容的基础都是通过一系列称为“http”或“https”的技术来传递的,它们是“(安全)超文本传输协议”的缩写(https 中的 's ' 代表‘安全’)https 的基本行为是:如果你点击某个内容以查看新内容,你就会指示浏览器跟踪超链接(又称“链接”)。这就是为什么它被称为“超文本”,因为它不仅包含文本,还包含“超链接”!
您的 Gmail 收件箱,其基础不过是超链接列表,或者只是指向您各种电子邮件的链接。左侧的标签(例如“收件箱”或“垃圾”)是链接。甚至设置工具也是(复杂的)链接!它们可能看起来不同,但它们的工作方式基本相同!
现在,关于 http 的基础构想,你的浏览器有不可能知道如果您点击的链接属于功能性gmail 的邮件列表,例如“打开下一封电子邮件”,或者一条链接在您的电子邮件正文中:对于您的浏览器,只需没有不同两者之间!外部链接在新的浏览器选项卡中打开,这是 gmail(或 outlook)网站的工作方式,不是由浏览器决定的(但作为用户,您可以右键单击链接,并在某种程度上决定该链接应在浏览器中的哪个位置打开)。
那么你的客户要求的是完全破坏任何浏览器的基本行为。 它还会破坏操作系统内置的基本安全措施:浏览器内的链接不得打开另一个软件,除非用户明确同意。这是为了避免恶意软件安装在您的计算机上(警惕任何违反这一原则的浏览器插件!)
(通过对 gmail 网站进行逆向工程,可能可以编写一个自定义浏览器来执行客户的要求,但如果 google 更改了任何代码,您的桌面上就会弹出随机的浏览器窗口 - 我为了比喻而稍微简化了一点。纯粹主义者请原谅我)
如果您的客户希望专门用于阅读电子邮件的应用程序,并通过电子邮件发送链接在不同的软件中打开,他们应该考虑安装专用的电子邮件客户端例如 Thunderbird(免费软件)。此类软件的行为不基于 http,您在其中单击的任何链接都将传递到操作系统,以在您喜欢的浏览器中打开。
答案2
我认为如果浏览器已经在运行,它显然应该在同一浏览器的新选项卡中打开链接,而不是检查兼容的应用程序来打开链接,然后参考操作系统浏览器首选项。
答案3
如果您的客户希望在单独的窗口中浏览和发送电子邮件,那么您可以将 Gmail 添加为 Chrome“应用程序”并固定到任务栏 - 类似于使用 Thunderbird。
但我推荐 Thunderbird,因为它可以在不同的标签中打开不同的电子邮件。
使用同一浏览器的两个窗口的缺点:应始终首先启动主 Chrome 窗口,否则在打开电子邮件中的链接时可能会丢失现有选项卡。解决方法:使用会话伙伴当标签页丢失时恢复,可以配置显示打开的标签页的数量。
最简单的解决方案,所有内容都在一个窗口中:使用 Gmail 作为 Firefox固定标签。