【发布时间】:2013-05-06 00:03:17
【问题描述】:
我正在尝试从某些页面启动弹出窗口。我希望用户仅在以下情况下看到弹出窗口:
a) 他们关闭浏览器选项卡 b) 他们点击了浏览器的后退按钮 c) 他们转到购买路径中下一步以外的页面 - 基本上,当他们转到不包含字符串“/checkout/”的任何 URL 时。
我查看了加载正文 onUnload 的弹出示例,这有点过于全球化了。我只想在他们尝试离开结帐路径时启动一个弹出窗口 - 一个真正的实际弹出窗口。
我在 StackOverflow 上查看了几个问题,但似乎没有一个能完全回答我的问题。这个答案https://stackoverflow.com/a/3753963/1634459 中提到的 onBeforeUnload 可能会工作......可能......但我不完全确定如何在上面列出的条件下实现它。
...帮助?
这是我想使用的弹出窗口代码:
<script language="javascript" type="text/javascript">
var win=null;
function NewWindow(mypage,myname,w,h,scroll,pos){
if(pos=="center"){LeftPosition=(screen.availWidth)?(screen.availWidth-w)/2:50;TopPosition=(screen.availHeight)?(screen.availHeight-h)/2:50;}
settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no';
win=window.open(mypage,myname,settings);
if(win.focus){win.focus();}}
function CloseNewWin(){if(win!=null && win.open)win.close()}
window.onfocus=CloseNewWin;
</script>
【问题讨论】:
标签: javascript popup onbeforeunload