1

此脚本在 Windows 机器上运行良好,并在前面显示弹出窗口。但在 Mac 机器中,弹出窗口位于浏览器窗口的后面。我也想在mac机器的前面显示弹出窗口。

<script type="text/javascript">
    var win=null;

        $(document).ready(function() {

            $("#buttonid").live("click",function(){

                var alt = "http://www.testhost.com/test.php";
                var rel = "http://www.testhost.com/test2.php";               
                    var width= (window.innerWidth)-450;
                    var win = window.open(alt,"mywin","width=450,height="+window.innerHeight+",left="+width+", location=no, menubar=no, status=no, titlebar=no, scrollbars=no");

                    win.onload=function(){

                        window.location=rel;
                     }
                    if (window.focus) {
                       win.focus();
                     }
                     //setTimeout(win.focus(), 0);
                     return false;


        });
        });
    </script>
    </head>
    <body>
    <button id="buttonid">Click</button>
    </body>
4

1 回答 1

0

试试这个:

if (window.focus) {
    win.blur();
    win.focus();
}

这是对 Chrome(webkit?)的修复。这是另一个问题/答案的相同解决方案:

window.focus() 在谷歌浏览器中不起作用

于 2013-03-12T06:48:31.123 回答