2013-11-04 74 views
0

我想知道如何(如果可能的话)在我继续下一页后继续运行javascript。Javascript正在加载另一个页面加载

我的情况: Javascript点击下一步按钮。 我现在在一个新的页面上。 但JavaScript停止运行,我的所有功能/变量都消失了。

我希望能够通过javascript推按钮,然后继续运行该.click()部件之后的代码。

如果它不可能,你可能会建议一种方法来做到这一点编程?

+9

听起来像你需要写一个“一页的应用程序”,并使用历史api。 –

+0

你可以使用AJAX来做到这一点。 – antyrat

+0

你需要执行的代码应该完成什么?根据这个问题,不同的解决方案可能是合适的。但总的来说,ajax调用某种服务器端点似乎是合适的 – argentage

回答

1

一旦你离开页面,该页面上运行任何JavaScript也将停止运行。

您有两种选择。

  1. 使用cookie存储您需要的任何变量或设置,并继续在下一页上运行相同的脚本。

  2. 不要实际上离开页面。您可以使用AJAX在页面上加载新信息,也可以在主页面继续加载时使用IFRAME更改部分页面内容。

0

正如@ mike-edwards在评论中所说的,您需要一个单独的页面应用程序。 你可以使用框架如AngularJSKnockout.js让你的生活更轻松。如你所说,无论何时在浏览器中加载新页面,前一页中的所有变量等都将丢失。保留变量的唯一方法是不要更改页面。您可以使用这些框架和HTML5 History基础结构来完成此操作。

有了AngularJS,历史支持就成为现实。据我所知,Knockout.js没有历史API支持,所以你需要使用另一个JS插件,如Davis.js

相关问题