Javascript 如何隐藏一个临时网页,一旦它';有人用过吗?
我有以下情况Javascript 如何隐藏一个临时网页,一旦它';有人用过吗?,javascript,web,Javascript,Web,我有以下情况 主页——用户单击一个链接,该链接将他们引导到JS生成的页面,这可能需要大量时间 JS页面做了一些工作,可能会显示一个“计时器”,表示工作将在X秒内完成,并将用户重定向到PDF PDF页面将显示给用户 问题: 一旦用户使用完PDF,他们点击浏览器上的“后退”按钮,希望返回主页,但他们会转到JS页面,因为浏览器就是这样工作的——他们会后退一步。当然,它会再次显示计时器,并将用户重定向回PDF 我如何构造我的软件,以便当用户使用完PDF后,单击“上一步”(或其他简单方式)将他们带回主
- 主页——用户单击一个链接,该链接将他们引导到JS生成的页面,这可能需要大量时间
- JS页面做了一些工作,可能会显示一个“计时器”,表示工作将在X秒内完成,并将用户重定向到PDF
- PDF页面将显示给用户
case "export-to-pdf":
$printpdf->generateCanvasInBrowser();
break;
HTML/JS端:
public function generateCanvasInBrowser()
{
//generate form with data
//submit form to PHP script
document.forms['form'].submit();
}
PHP方面:
//Takes and processes POST-ed data from form, and generates PDF
<?
echo printPDF();
//从表单中获取和处理发布的数据,并生成PDF
在主页的DIV内生成JS页面,并使用widh“visibility:collapse”来显示或隐藏。如果使用JQuery,则使用(“#DIV”).hide()和.show()
这应该会容易得多,并解决您的问题(从我的评论开始,它似乎主要解决了问题)
解决这个问题的最好方法是在主页上显示倒计时。这将完全避免问题,因为这样您就不会加载中间的任何页面。例如,如果使用包含js生成的页面的模式,则需要确保将表单提交到顶部页面。您可以通过将target=“\u top”
添加到您的
标记中来实现这一点
我希望这对你有用。你用什么重定向观众?只有一个document.location.href='
?我使用表单提交,所以document.forms['my_form'].submit()代码>能否请您展示一些代码,比如一个工作示例?我不太清楚我是否理解你在做什么,所以我现在无法真正找到你问题的原因。例如,如果可以,请将我链接到演示您的问题的演示,如果不行,请链接到您的站点。还有,为什么您需要首先将用户重定向到JS生成的页面?你不能在主页上显示倒计时吗?这将完全避免问题。我可能会做一个覆盖div。以前没有做过一个,但可能它可以工作。好的,谢谢!这似乎起到了作用,痛苦最小。我用target=“\u top”
的方式完成了。由于我的用户界面的性质,我不确定in-page是否是最好的——对我来说,弹出一个“请稍候”似乎更有意义。页面方式可能很酷,但以后可能会:)