1
我正在使用一个confirmmit java脚本函数重定向到一个新的网址,并给出了肯定的答复。它并不完全符合我的要求 - 也许我不能完全符合我的要求。是否可以使用“确认”在同一窗口中打开新的URL?
下面是它做什么 - onunload的,它会打开新的URL在新窗口中的积极响应,这可以通过一个弹出窗口阻止程序被阻止,而用户甚至不知道,给人的印象是什么都没有发生。当它打开新的URL时,会在新窗口中打开,使桌面变得拥挤。它不是一个很好的解决方案。
我想要它做什么 - onunload我希望它在同一个窗口中打开新的URL,并且不会被分类为被阻止的“弹出窗口”。我试着切换到onbeforeunload .... nuthin。
有没有简单的解决方案?
这里是我当前的代码:
<script language=javascript>
function confirmit()
{
var closeit= confirm("My message");
if (closeit == true)
{window.open("http://MyDestinationURL");}
else
{window.close();} } window.onunload = confirmit
</script>
我试过使用 window.location.href ='http:// MyDestinationURL'; 和 window.location ='http:// MyDestinationURL'; 两者都不起作用。我会得到确认消息,但是当我点击“确定”时,它不会重定向到http:// MyDestinationURL。我正在Safari和Firefox中测试。有任何想法吗? 满,更新的代码: <脚本类型= “文本/ JavaScript的”> 功能confirmit() { 如果(window.confirm( “我的消息”)) { window.location.href =' HTTP:// URL'; } } window.onunload = confirmit; – 2010-05-19 16:31:47
@Dan:Aaaah。我刚刚意识到它是来自'onunload'事件,你试图做到这一点。由于窗户已经注定要关闭,因此设置新位置没有意义。打开一个新窗口是在这个阶段打开新页面的唯一方法。如果您希望能够关闭窗口,您必须使用'onbeforeunload'事件。 – Guffa 2010-05-19 16:40:16
似乎仍不工作... 继承人的测试页http://instantmediakit.poweredbytom.com <脚本类型= “文本/ JavaScript的”> 功能confirmit() { 如果(窗口.confirm(“我的信息”)) { window.location.href ='http:// newurl'; } } 窗口。onbeforeunload =确认; – 2010-05-19 16:57:44