2011-10-03 162 views
3

我有一個鏈接,點擊後,瀏覽器將打開一個新窗口。這對於鏈路上的單擊事件的代碼:關於打開/彈出新窗口的瀏覽器警報

var clickView = function(){ 
        window.open('/client/item/show/' + itemID); 
        return false; 
       }; 

我也有另外一個新功能,從AJAX調用讀取URL,並在新窗口中打開它。

  if (json.data && json.data.URL) 
      { 
        if (me.urlTarget==='_self'){ 
          //use the self window to open the URL 
          window.location.href =json.data.URL; 
        } else{ 
          //use new window to open the url. 
          window.open(json.data.URL); 
        } 

      } 

對於第一函數(clickView),瀏覽器(IE7/8 &火狐)將打開一個新標籤沒有任何警告用戶。對於第二個函數(其中url是從json.data.URL中讀取的),IE和Firefox都會顯示警告消息並阻止新窗口,直到用戶同意警告。在這兩個函數中,開始URL是相同的。

我想知道爲什麼會有差異,是否有可能使它們表現一致?

回答

0

可能是第二個實例生成警告,因爲它是絕對的,而不是相對的URL?

(無論哪種方式,打開新的瀏覽器窗口是魔鬼的工作)。

+0

兩者都是相對URL。 (可悲的是我正在爲魔鬼工作:) – LazNiko

相關問題