Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果用户离开,继续运行JS_Javascript_Html - Fatal编程技术网

Javascript 如果用户离开,继续运行JS

Javascript 如果用户离开,继续运行JS,javascript,html,Javascript,Html,所以我有一些“长”操作,必须在客户端的浏览器中运行。我想让它运行,即使用户离开了那个特定的页面(尽管它停留在同一个域中)。使用JS是否可能?如果可能,基本方法是什么?不,如果用户关闭浏览器,JavaScript将停止运行。客户机上的长时间操作是一种糟糕的模式。至少,您必须有一种方法,通过跟踪您的进度,从关闭的浏览器中恢复。您可能可以使用iframe运行某些事件,这取决于您的站点的结构,但您必须将主站点放在它自己的iframe中,或者有一个弹出窗口。如果你创建了一个有自己内部路由的javascri

所以我有一些“长”操作,必须在客户端的浏览器中运行。我想让它运行,即使用户离开了那个特定的页面(尽管它停留在同一个域中)。使用JS是否可能?如果可能,基本方法是什么?

不,如果用户关闭浏览器,JavaScript将停止运行。客户机上的长时间操作是一种糟糕的模式。至少,您必须有一种方法,通过跟踪您的进度,从关闭的浏览器中恢复。您可能可以使用iframe运行某些事件,这取决于您的站点的结构,但您必须将主站点放在它自己的iframe中,或者有一个弹出窗口。如果你创建了一个有自己内部路由的javascript应用程序,你可以通过创建“页面”组件来实现这一点,这些组件都会监听你的操作库。如果用户完全退出应用程序、刷新浏览器或关闭浏览器而没有会话存储的服务器端跟踪进度,则这将没有帮助。但是,在这一点上,让整个操作发生在服务器端可能更好。不,如果用户关闭浏览器,JavaScript将停止运行。客户机上的长时间操作是一种糟糕的模式。至少,您必须有一种方法,通过跟踪您的进度,从关闭的浏览器中恢复。您可能可以使用iframe运行某些事件,这取决于您的站点的结构,但您必须将主站点放在它自己的iframe中,或者有一个弹出窗口。如果你创建了一个有自己内部路由的javascript应用程序,你可以通过创建“页面”组件来实现这一点,这些组件都会监听你的操作库。如果用户完全退出应用程序、刷新浏览器或关闭浏览器而没有会话存储的服务器端跟踪进度,则这将没有帮助。但是,在这一点上,让整个操作发生在服务器端可能更好。