function check()
{
   new_win=window.open("print.html","test")
}
function pd()
{
   if(!new_win)//窗口没有打开
   {
       check()
   }
   else
   {
      window.location.href="2.htm"  //转到其他页面
   }
}

解决方案 »

  1.   

    :) 
    看来我真的没有说清楚
    function check()
    {
       new_win=window.open("print.html","test")
    }
    function pd()
    {
       if(!new_win)//窗口没有打开
       {
           check()
       }
       else
       {
          window.location.href="2.htm"  //转到其他页面
       }
    }思路是这样的window.location.href="2.htm"不是我要表达的意思,window.location.href="2.htm"应该还是print.html,但是写成这样的话,页面就会刷新
    我不想让页面刷新
    谢谢
      

  2.   

    把返回值保存一下,
    然後在打開窗口之前判斷一下這個返回值.
    例如:var wnd;function openWindow()
    {
        if (!wnd) wnd = window.open("print.html","test");
        wnd.focus();
    }這樣窗口就不會重複打開了.
      

  3.   

    var wnd;
    要定义成全局的吗?