文章出處

說起廣告攔截,這應該是瀏覽器的一個特性,它會將window.open產生的窗口默認為一個廣告,將它進行攔截,但有時,這不是我們所希望的,有時,我們就是需要它在客戶端的瀏覽器上彈出一個新窗口,以展示數據處理的更新結果,例如,一個創建商品的預覽功能,它需要先保存數據,然后再在新窗口展示最新的信息,這種需求并不少,而大多數人的作法就是使用window.open去彈窗口,但它確實不是一種好的方式!

新方式來了

我們知道表單提交實際上可以把POST的結果響應到新窗口上,我們就是利用表單的這種性質,在JS中偽造一個form,來實現新窗口展示數據的功能  

       //偽裝一下表單提交在新窗口
        function newWinUrl( url ){
            var f=document.createElement("form");
            f.setAttribute("action" , url );
            f.setAttribute("method" , 'get' );
            f.setAttribute("target" , '_black' );
            document.body.appendChild(f)
            f.submit();
        }

在程序調用它時,可能有這樣的代碼

       //預覽功能
        $("#do").click(function () {
            $ajax({
                type: "get",
                data: {},
                success: function (data) {
                    newWinUrl(url + data);
                }
            });

        });

0了,可以進行測試了.


文章列表




Avast logo

Avast 防毒軟體已檢查此封電子郵件的病毒。
www.avast.com


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()