执行导致使用bookmarklet重定向的javascript命令

时间:2014-06-17 14:51:48

标签: javascript html bookmarklet

我正在尝试创建一个javascript书签,它将在网络应用程序上执行四个命令。

tabClick('1');
document.getElementById('2').click();
document.getElementById('3').click();
tabClick('4');

目前,tabClick('4')或第3行以下的任何功能都不会执行。我认为这是因为document.getElementById('3').click();会导致重定向,这似乎会擦除书签。

有没有办法让书签在重定向后继续在下一页上运行代码?

另外,我目前只是使用setTimeout暂停一秒钟等待每个命令加载,然后再执行下一个操作:

javascript:tabClick('1');setTimeout(function(){document.getElementById("2").click();},2000); setTimeout(function(){document.getElementById("3").click();},3000);

有没有办法告诉代码在上一行加载完成后运行下一行?

1 个答案:

答案 0 :(得分:0)

这是不可能的,你可以做的是在窗口中创建一个队列对象,在加载页面时执行队列中的命令。

但是当第二个命令重定向页面时,为什么还要点击另外两个元素?如果它很重要,我建议更改当前执行的命令的顺序。