使用javascript打开一个新页面可以有几种方式,但各有利弊,以下做下分析

1.window.open(url)

这是新手最常用的方法,好处是简单易用,坏处,很简单,会被很多浏览器拦截而导致功能失效

2.使用js在页面创建一个a标签,然后点击它

示例代码如下:

                var a = document.getElementById("entergameform1001");
                if(!a){
                    $(document.body).append('<a id="entergameform1001" href="' + url + '" target="_blank"></a>');
                    a = document.getElementById("entergameform1001");
                }else{
                    $(a).attr("href",url);
                }
                a.click();

优点,不会被浏览器拦截,但是两个窗口交互的话,会找不到window.owner

3.使用js创建一个form表单,模拟表单提交

示例代码如下:

                var form = document.getElementById("entergameform1001");
                if(!form){
                    $(document.body).append('<form id="entergameform1001" action="' + url + '" method="get" target="_blank"></form>');
                    form = document.getElementById("entergameform1001");
                }else{
                    $(form).attr("action",url);
                }
                form.submit();

优点:相关a标签,页面可以获取window.owner。缺点:使用get方式,在部分浏览器中,url里的参数会被过滤掉,必须使用input值来传递。使用post提交时,会被浏览器拦截