如何打开子浏览器窗口,然后在新加载的子浏览器页面上执行脚本以单击其中的链接
How to open a child browser window and then execute a script on the newly loaded child browser page to click a link in it
我有 2 个 Web 应用程序 A 和 B(对于那些熟悉 Zoho 的人来说,A 是 Zoho Creator,B 是 Zoho 发票)
从 Web 应用程序 A 中,我需要在应用程序 B 中打开一个页面并访问 B 中的特定视图,该视图只能通过单击 B 中页面上的链接来获取(因为该视图是通过视图的 AJAX 加载获得的)。
B 的限制在于它不会通过带有参数的 URL 公开我想要的特定视图(即我无法仅通过 www.appB.com/somePage?ID=1233 新的浏览器窗口请求来获得我想要的东西。我只能 www.appB.com/somePage 新的浏览器窗口请求,然后我需要手动单击 B 中的 AJAX 链接以打开我想要的视图)。
A的限制是我无法访问javascript。我的手段有限(Zoho Creator的洪水语言)在新浏览器窗口中打开另一个Web应用程序。我所能做的就是给A的网页一个URL,并告诉它在同一窗口或新窗口中打开它。因此,在打开新的浏览器窗口时,我对 A 网页的唯一操作能力是新网页的 URL。
我想完成的是 - 从 A 的网页通过 URL 打开新的浏览器窗口,加载 B 的初始页面,然后我的 javascript 执行并单击 B 上的链接,该链接在 B 的浏览器窗口中加载所需的 AJAX 视图。
关于如何使其工作的任何想法?非常感谢您的意见,并提前非常感谢。
总结一下我之前评论中的结论:
- 您不能通过页面 URL 将 javascript 注入页面。 您可以在 URL 中传递参数,但接收页面需要已经编码才能对这些参数进行操作。
- 如果两个页面位于不同的域中并且没有预先设计为协作,则不能使用一个页面中的 javascript 对另一个页面进行操作。 这是称为同源策略的安全限制,您可以在此处阅读。
- 因此,如果您无法以任何方式修改页面 B,并且 B 与 A 位于不同的域中,并且 A 和 B 不是预先设计为合作的,那么您就无法从 A 单击页面 B 中的链接。
相关文章:
- 在Windows 10中自动执行例行程序(主要与浏览器交互)
- 我想用Javascript网站在开放的Chrome浏览器上执行功能
- Chrome浏览器“;挂起”;同时在循环中执行AJAX请求
- 片段uri's未在浏览器上执行
- 适用于多种浏览器的Selenium-需要能够执行javascript的webDriver
- 从浏览器访问页面时执行js函数's后退按钮
- 如何在关闭浏览器的同时执行php函数
- 如何在浏览器中执行对比度拉伸/规范化
- 如何在Javascript执行后防止浏览器锁定
- 基于浏览器窗口大小的条件 JavaScript 执行
- AJAX 调用在获得响应并成功执行时会冻结浏览器一段时间
- 为什么未执行的评估对某些浏览器中的行为有影响
- 修改时,哪些DOM元素属性会导致浏览器执行回流操作
- 从浏览器执行.EXE文件
- Rails 4 - 强制浏览器执行javascript响应而不是显示文本
- 如何在浏览器执行javascript后获得HTML代码
- google-chrome(浏览器)执行方法调用,其结果从未使用(对于RuntimeTest)
- 直接从浏览器执行JavaScript文件
- Node.js不从浏览器执行DB函数
- 如何防止浏览器执行一些JavaScript时,用户单击后退按钮