跨多个页面运行控制台功能

时间:2016-03-16 16:28:17

标签: javascript jquery console

有点难以解释,我不能100%确定这可以在控制台中实现,或者是否需要其他方法。

我想要做的一步一步:

  • 步骤1 - 单击锚点i中的锚点(for循环)并转到新页面
  • 第2步 - 点击第二页上的第一个锚点并转到第三页
  • 第3步 - 点击按钮返回第一页。
  • 步骤4 - 重复步骤1-3,这次i是第二个将您带到新页面的锚点。依此类推,直到点击了第1页上的所有锚点,并且每个锚点都发生了。

在我的脑海里,我可以一步一步地写出来,但我不确定如何以我想要的方式自动化这个过程。

这是我开始使用的代码:

// Step 1 - Page 1
var i = 0;

for (i = 0; i < $('a').length; i++) {
    $('a').eq(i).click();
}

// Step 2 - Page 2
$('a').eq(0).click();

// Step 3 - Page 3
$('button').click();

// Step 4 onward - Click next anchor in for loop and repeat step 2 and 3 until there are no anchors left on page 1 to click

任何帮助或指导都会很棒 - 我已经尝试过谷歌搜索,但我并不完全确定我真正想要的是什么!!

谢谢!

2 个答案:

答案 0 :(得分:0)

如果第1,2或3页是完全不同的文档(即从第1页到第2页要求浏览器进行完全重定向),我能想到的唯一方法就是在URL中单击下一个锚点查询参数。 E.g:

// page 1
<a id="anchor1" href="www.example.com/page2?nextAnchor=anchor2>Anchor 1</a>
<a id="anchor2" href="www.example.com/page2?nextAnchor=anchor3>Anchor 2</a>
<a id="anchor3" href="www.example.com/page2>Anchor 3</a>

如果您在页面1中携带?nextAnchor=anchor2,那么您可以在页面1的脚本中获得nextAnchor值,这样您就可以获得锚点的确切ID必须单击下一步。重复此过程,直到您没有nextAnchor值(在最后一个锚点中发生)。

答案 1 :(得分:0)

简单 - 虽然HTTP是无状态的,但您已经拥有Cookie,URI参数,套接字,如果您在iframe中打开您的网页(如果它们位于同一个域中),您甚至可以使用网络工作者。

使用URI参数(即http://domain.com/?use_loop_script&step=2&current_anchor=3&callback=click_link(x))可能是最简单的方法,只要您可以访问所有页面的脚本。

然后,您只需在每个页面上插入一个函数,然后检查URI中是否存在use_loop_script,并使用URI中设置的数字来执行您的函数click_link(i)或其他类似的事情。< / p>

您需要使用URI来跟踪您的步骤,以便执行相应的功能(单击锚点,单击按钮等)。

iframe被视为单独的文档,只要它们位于同一个域中,您的JavaScript就可以检查该文档是否已就绪,如果需要,可以单击主页面中的任何链接。因此,如果您只是访问iframe的DOM,您甚至根本不需要URI参数,甚至不会在后续页面上加载任何脚本。