使用jQuery点击书签

585*_*nor 12 javascript jquery

有没有办法在点击特定按钮时将当前页面保存为书签(通过jQuery或其他方式)?

bas*_*gge 9

<script language="javascript" type="text/javascript">
$(document).ready(function(){
  $("a.jQueryBookmark").click(function(e){
    e.preventDefault(); // this will prevent the anchor tag from going the user off to the link
    var bookmarkUrl = this.href;
    var bookmarkTitle = this.title;

    if (window.sidebar) { // For Mozilla Firefox Bookmark
        window.sidebar.addPanel(bookmarkTitle, bookmarkUrl,"");
    } else if( window.external || document.all) { // For IE Favorite
        window.external.AddFavorite( bookmarkUrl, bookmarkTitle);
    } else if(window.opera) { // For Opera Browsers
        $("a.jQueryBookmark").attr("href",bookmarkUrl);
        $("a.jQueryBookmark").attr("title",bookmarkTitle);
        $("a.jQueryBookmark").attr("rel","sidebar");
    } else { // for other browsers which does not support
         alert('Your browser does not support this bookmark action');
         return false;
    }
  });
});
</script>
Run Code Online (Sandbox Code Playgroud)

本规范取自Developersnippets!

/ E:

Chrome不支持此类操作,因为安全级别可能会被破坏.

  • 为了防止在 Chrome 中抛出错误,你应该使用 `else if(window.external &amp;&amp; window.external.AddFavorite)`,因为 `window.external` 是在 Chrome 中定义的,而不是 `window.external.AddFavorite`。 (2认同)

Ale*_*ati 8

由于Chrome不支持此类操作,因此解决方案可能是首先检查浏览器是否使用Chrome浏览器,如果是,则提醒用户不支持书签功能.然后对于其他情况,DevelopersSnippets上提供的脚本运行正常.

例:

   $("a.bookmark").click(function(e){
    e.preventDefault(); // this will prevent the anchor tag from going the user off to the link
    var bookmarkUrl = this.href;
    var bookmarkTitle = this.title;
    if (navigator.userAgent.toLowerCase().indexOf('chrome') > -1) { 
            alert("This function is not available in Google Chrome. Click the star symbol at the end of the address-bar or hit Ctrl-D (Command+D for Macs) to create a bookmark.");      
    }else if (window.sidebar) { // For Mozilla Firefox Bookmark
        window.sidebar.addPanel(bookmarkTitle, bookmarkUrl,"");
    } else if( window.external || document.all) { // For IE Favorite
        window.external.AddFavorite( bookmarkUrl, bookmarkTitle);          
    } else if(window.opera) { // For Opera Browsers
        $("a.bookmark").attr("href",bookmarkUrl);
        $("a.bookmark").attr("title",bookmarkTitle);
        $("a.bookmark").attr("rel","sidebar");
    } else { // for other browsers which does not support
         alert('Your browser does not support this bookmark action');
         return false;
    }
  });
Run Code Online (Sandbox Code Playgroud)