【问题标题】:programmatically press escape key when webpage loads completely当网页完全加载时以编程方式按退出键
【发布时间】:2021-04-21 07:41:44
【问题描述】:

我创建了一个网络应用程序(使用烧瓶),其中有一些链接如下:

<a target="_blank" href=" https://in.tradingview.com/chart/?symbol=NSE:ACC1! ">ACC</a> 
<a target="_blank "  href="https://in.tradingview.com/chart/?symbol=NSE:ADANIENT1! ">ADANIENT</a> 
<a target="_blank "  href="https://in.tradingview.com/chart/?symbol=NSE:ADANIPORTS1! ">ADANIPORTS</a>

单击此链接时,将打开相应的页面,加载页面后,该页面上会显示以下弹出窗口。

关闭此弹出窗口的一种方法是单击cross symbol,另一种方法是按退出键。

在我访问的每个页面上都这样做很烦人。

我想在页面完全加载时以编程方式按转义键。

我参考了这个问题Press Ctrl+c keys automatically onload

这个问题和我的不同之处在于 我想在单击链接时打开的页面上按转义键 而不是在我当前所在的页面上

在寻找解决方案时,我发现了 javascript 中的 onload 函数 我是 javascript 的初学者。

我想知道如何在加载的新页面上使用此功能。

如果问题不清楚

这正是我想要做的:

  1. 用户点击我的 webapp 上的链接
  2. 他被重定向到相应的网页
  3. 当网页完全加载时,escape key 应该在该页面上被按下 这样弹出窗口就会关闭。

请注意,我的 webapp 不是面向公众的网站;我是唯一的用户。

更新 2:

阻塞元素后无法正常访问页面。

【问题讨论】:

    标签: javascript python html


    【解决方案1】:

    要删除网页上的弹出窗口或其他元素(供您个人使用),您可以使用 UBlock Origin,这是一个支持 dynamic filtering 的 AdBlocker,因此您可以添加过滤器/规则来删除域和/或子域。

    它也相当容易使用:

    【讨论】:

    • 使用动态过滤我能够阻止元素,但在此之后,无法像以前一样访问页面,我尝试了多个元素并预览但没有运气。我已经更新了有问题的图像,我认为阻止元素不是正确的方法,我需要编写在页面加载时按下转义键的扩展。
    • @user4599 模态弹出窗口通常由两个元素组成:弹出窗口本身和整个网页上的 div 使其变暗。尝试阻止两者。有些可能有更多元素。
    【解决方案2】:

    注意:下面的答案假设其他人将使用此页面。

    鉴于您是唯一的用户,那么 uBlock Origin 应该按照 @bluevulture 的建议来解决问题!


    如果您链接到的页面不受您的控制,那么您不能这样做。

    当您的访问者点击其中一个链接时,您的页面将被完全卸载,包括您的所有 JavaScript 代码。然后新页面加载,你根本无法影响它。

    如果您拥有目标页面,那么您可以在这些页面本身中添加一些 JavaScript 代码。但是,如果您可以控制这些页面,您可能只需更改它们的代码,一开始就不显示弹出窗口。

    您可以使用 Chrome 扩展程序(或其他浏览器的类似扩展程序)执行此操作,但您的访问者必须安装此扩展程序并为其提供对所有网页的完全访问权限。他们可能不愿意这样做。

    【讨论】:

    • 是否有任何扩展可用于 chrome 这样做?
    • 不知道。您将不得不进行一些搜索,或者变得雄心勃勃并编写自己的扩展程序。但请记住,您的页面不能仅自行加载扩展程序。您必须说服访问者安装扩展程序。
    • 1) 我没有目标页面,2) 只有我会使用这个 webapp,所以安装扩展没有问题,
    • UBlock Origin,能够从页面中删除元素,并能够添加过滤器来为你做这件事。我用它来做你想做的事。
    • 我没有用 javascript 编写代码的经验,我最好在 python 中寻找解决方案。
    【解决方案3】:

    按 f12 打开开发人员工具,然后打开检查器工具(如果您使用的是 chrome,请控制 shift C),然后单击要以编程方式单击的十字。您将看到该元素有一个 id,如果没有,则在 HTML 中为该元素添加一个 id。知道 id 后,将其插入 HTML 的末尾:

    <script>
    let target = document.getElementById("id-goes-here");
    target.click();
    </script>
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多