gpt4 book ai didi

javascript - 使用 window.opener 调用 javascript 函数是一个好的做法吗?

转载 作者:行者123 更新时间:2023-11-28 16:34:28 25 4
gpt4 key购买 nike

我从来没有考虑过使用 window.opener 在父窗口中调用 javascript 函数,但最近遇到过它并且想知道。

  1. 这样做是否被视为良好做法?我本以为这是您应该避免的事情,而使用 ajax 则您可以随时围绕它进行设计。
  2. 主要是 ajax 和标签式浏览之前的时代遗留下来的吗?

最佳答案

需要绝对清楚的是,window.opener 是对使用window.open() 打开当前窗口的窗口的引用。这是在 JavaScript 中获取此类窗口的唯一方法。在谈论“父”窗口时必须小心,因为这可能意味着包含当前框架或 iframe 的窗口,而 window.parent 是对包含当前窗口的窗口对象的引用。

关于你的问题:

  1. 值得庆幸的是,打开新窗口的情况比以前少了很多。在用户不知情和同意的情况下,或者在用户没有明确采取操作(例如单击某些内容来触发它)的情况下执行此操作始终是一个坏主意。现在大多数人都有弹出窗口阻止程序,这通常会抑制您的新窗口。简而言之,在某些用例中,这样做可能是合理的(例如,我喜欢在开发时有一个单独的 JavaScript 日志记录窗口),但一般来说最好避免这样做。

  2. 我不认为 Ajax 或选项卡式浏览对打开新窗口的减少有很大影响。我想说,最大的单一影响是在 Jakob Nielsen 等著名可用性专家的领导下,人们越来越认识到它给用户带来的困惑和烦恼(参见 http://diveintoaccessibility.org/day_16_not_opening_new_windows.htmlhttp://www.useit.com/alertbox/990530.html )。此外,许多广告都使用弹出窗口,这对用户来说非常烦人,并直接导致了弹出窗口拦截器的兴起。

关于javascript - 使用 window.opener 调用 javascript 函数是一个好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4568635/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com