2008-09-20 66 views
7

我使用下面的JavaScript代碼:而Firefox的JavaScript書籤問題

<script language="JavaScript1.2" type="text/javascript"> 
function CreateBookmarkLink(title, url) { 
    if (window.sidebar) { 
     window.sidebar.addPanel(title, url,""); 
    } else if(window.external) { 
     window.external.AddFavorite(url, title); } 
    else if(window.opera && window.print) { 
     return true; } 
} 
</script> 

這將爲Firefox和IE的書籤。但是Firefox的鏈接將顯示在瀏覽器的側面板中,而不是顯示在主屏幕中。我個人覺得這很煩人,我正在尋找更好的解決方案。當然,可以手動編輯書籤,以使不是顯示在側面板中,但這需要額外的步驟。我只是希望能夠讓人們以簡單的方式爲網頁添加書籤(在用於構建特定方案的URL中有很多GET信息)。

我擔心Firefox可能無法在主屏幕上顯示該頁面(因爲谷歌搜索這個主題幾乎沒有什麼值得使用的),但我可能錯過了一些東西。如果有人有一個想法,如果這是可能的,或者如果有解決方法,我很樂意聽到它。

+0

順便說一下,`window.opera && window.print`似乎是針對Opera> v6的。
而`language`屬性已被棄用,不應聲明:http://www.w3.org/TR/REC-html40/interact/scripts.html#h-18.2.2 – 2013-12-05 15:50:00

回答

4

我認爲這是Firefox的唯一解決方案...我對該操作有更好的功能,它甚至可以用於Opera,並顯示其他「不支持」瀏覽器的消息。

<script type="text/javascript"> 
function addBookmark(url,name){ 
    if(window.sidebar && window.sidebar.addPanel) { 
     window.sidebar.addPanel(name,url,''); //obsolete from FF 23. 
} else if(window.opera && window.print) { 
     var e=document.createElement('a'); 
     e.setAttribute('href',url); 
     e.setAttribute('title',name); 
     e.setAttribute('rel','sidebar'); 
     e.click(); 
} else if(window.external) { 
     try { 
      window.external.AddFavorite(url,name); 
     } 
     catch(e){} 
} 
else 
     alert("To add our website to your bookmarks use CTRL+D on Windows and Linux and Command+D on the Mac."); 
} 
</script> 
+0

你是對的。如果沒有在側面板中打開,則無法在Firefox中將書籤添加到書籤。 – 2008-09-20 12:11:21

+0

Opera中的這段代碼只是將用戶重定向到鏈接頁面。 – 2008-11-17 06:57:53

0

您有

if (window.sidebar) 

一個特例,那麼對於一個分支「其他」 - 不會Firefox的土地在第一分支,因此只添加面板?

+0

我的意思是 - 改爲寫'else if(window.external)'做一個新的if if所以你也可以把它作爲書籤添加 – 2008-09-20 11:57:42

0

Hojou,

似乎是添加書籤的Firefox的唯一途徑。所以FF需要登陸第一個分支來發生任何事情。我google了一些,但我真的得到這個想法,這是不可能在FF中正確地址...

7

對於Firefox,無需爲腳本設置任何JavaScript書籤頁,只有一個錨定標記標題的rel =「側邊欄」能做到這一點的功能

<a href="http://www.google.com" title="Google" rel="sidebar">Bookmark This Page</a> 

我已經測試了FF9和其工作的罰款。

當您點擊鏈接時,Firefox會打開一個對話框新建書籤,如果你想不加載邊欄上的此書籤然後取消勾選裝載此書籤從對話框的側邊欄