如何在我的网站上添加"添加到收藏夹"按钮或链接?

web*_*cgr 48 html javascript jquery bookmarks

我正在使用Drupal构建一个网站.在每个页面的标题上,我想要一个单独的图像(由我自定义设计),它将充当自定义的"添加到收藏夹"按钮.单击图像应将网站的URL添加到用户浏览器的收藏夹(书签).这适用于所有浏览器,IE7 +,FF,Opera,Chrome.我无法在网上找到这方面的信息.我想javascript应该可以完成这项工作,但我没有太多Javascript经验:)所以我需要你的帮助!

iam*_*eed 88

jQuery版本

$(function() {
  $('#bookmarkme').click(function() {
    if (window.sidebar && window.sidebar.addPanel) { // Mozilla Firefox Bookmark
      window.sidebar.addPanel(document.title, window.location.href, '');
    } else if (window.external && ('AddFavorite' in window.external)) { // IE Favorite
      window.external.AddFavorite(location.href, document.title);
    } else if (window.opera && window.print) { // Opera Hotlist
      this.title = document.title;
      return true;
    } else { // webkit - safari/chrome
      alert('Press ' + (navigator.userAgent.toLowerCase().indexOf('mac') != -1 ? 'Command/Cmd' : 'CTRL') + ' + D to bookmark this page.');
    }
  });
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<a id="bookmarkme" href="#" rel="sidebar" title="bookmark this page">Bookmark This Page</a>
Run Code Online (Sandbox Code Playgroud)

  • Firefox的专有权'window.sidebar.addPanel(..)`已被弃用,[该功能已在Firefox 23中删除](https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/ 23#DOM)(见第三个子弹) (4认同)
  • +1,但是可以在Chrome/Safari中使用吗? (2认同)
  • 我已经尝试但它不适用于歌剧.只有IE弹出书签框,Firefox,Chrome和Safari(Windows)全部提醒. (2认同)

PHP*_*Pst 22

此代码是iambriansreed的答案的更正版本:

<script type="text/javascript">
    $(function() {
        $("#bookmarkme").click(function() {
            // Mozilla Firefox Bookmark
            if ('sidebar' in window && 'addPanel' in window.sidebar) { 
                window.sidebar.addPanel(location.href,document.title,"");
            } else if( /*@cc_on!@*/false) { // IE Favorite
                window.external.AddFavorite(location.href,document.title); 
            } else { // webkit - safari/chrome
                alert('Press ' + (navigator.userAgent.toLowerCase().indexOf('mac') != - 1 ? 'Command/Cmd' : 'CTRL') + ' + D to bookmark this page.');
            }
        });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

  • 刚试过这个脚本,但它只弹出IE,Firefox,Chrome,Opera和Safari(Windows)上的书签框全部提醒. (3认同)
  • **更新:如果你有一个id = sidebar**的元素,这将失败,请检查一下:http://stackoverflow.com/questions/17747578/uncaught-typeerror-object-htmldivelement-has-no-method -addpanel/17747873?noredirect = 1#comment25877287_17747873 (2认同)