2011-06-28 54 views
3

我正在開發一個工具,可以讓你同時打開多個頁面的快捷方式,使用的東西就像打開你的日常網站或查詢多個搜索引擎的短語。在Firefox,Internet Explorer和Opera中,假設您已解除域的彈出窗口,代碼將按預期工作。如何獲得的Chrome新標籤頁中打開多個網站

瀏覽器,但是,如果這些鏈接打開的頁面加載時,會自動打開新窗口,而不是標籤的網站。如果openAll()被註釋掉並且按鈕被點擊或按下了一個鍵,頁面將在標籤中打開。請注意它正在調用完全相同的功能。

我已經找到了最好的解決方案(這是不必多說了)是One Window擴展。它可以工作,但是你可以看到新的窗口打開,然後又被吸回來,它使你無法用Ctrl-N打開新的Windows,迫使你拖出製表符來使用另一個Chrome窗口。

我知道有沒有被改變這一點,因爲它是一個瀏覽器設置,但作爲工具的用戶這很煩人有網站在新窗口中打開所有的編程方式。是否有Chrome設置或擴展程序,當它們在沒有用戶輸入的情況下加載時會在標籤中打開鏈接?我意識到打開一大堆窗戶是瀏覽器旨在阻止的事情,但這是我想要允許的一次。

<input id="openAllBtn" type="button" value="Open all links"> (Or press any key) 
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.1.min.js"></script> 
<script type="text/javascript"> 
function openAll() { 
    window.open('http://yahoo.com/'); 
    window.location.replace('http://www.bing.com/'); 
    return false; 
} 
$(document).ready(function() { 
    $(document).bind('keypress', openAll); 
    $("#openAllBtn").bind("click", openAll); 
    openAll(); 
}); 
</script> 

下面的代碼的小提琴:http://jsfiddle.net/sfzjR/

+0

您正在使用什麼版本的Chrome瀏覽器?你提供的jsfiddle爲我打開了2個選項卡。 – matzahboy

+0

讓我再試一次。下面是我要做的,以制定您正在尋找的一般行爲: //爲您想要打開的每個鏈接創建簡單的'target ='_ blank''鏈接。 //通過jQuery中的普通類收集所有元素。 //延遲一段時間後連續觸發每個事件的點擊事件。 //允許用戶隨時通過再次點擊按鈕來停止打開鏈接,大概是通過殺死一個setTimeout函數。 //當點擊並打開70個鏈接時,這具有不會使瀏覽器瀏覽器崩潰或DOS的好處。 – Kzqai

+0

@matzahboy我使用Chrome 13.0.782.32 beta-m並使用最新的Chromium dev build進行測試。小提琴打電話給openAll()註釋掉了。嘗試取消註釋,然後運行它。 –

回答

0

是否有Chrome的設置或擴展 時 他們無需用戶輸入加載,將在標籤中打開鏈接?

查看chrome extension docs中的創建方法。默認情況下,它會打開一個新標籤頁,你可以選擇指定你想要打開的標籤頁,並給這個標籤頁一個url。

+0

感謝您的鏈接。我希望不需要創建一個擴展來解決這個問題,但它看起來可能是最好的選擇。 –

相關問題