用JavaScript实现加入书签/收藏本页功能 addBookmark(url, title)

转载请注明出处:http://blog.csdn.net/u012124764/article/details/50100313
原文:http://buffernow.com/create-bookmark-link-using-javascript/

这篇文章是关于如何给博客或者网站添加 加入书签/收藏本页 功能,以下代码支持的浏览器有 IE, Mozilla Firefox 和 Opera(注:Chrome和Safari出于安全考虑,不支持通过JavaScript添加书签,必须按Ctrl+D/Command+D/Ctrl+B手动添加)

addBookmark(url, title)

function addBookmark(url, title){
if (!url) {url = window.location}
    if (!title) {title = document.title}
    var browser=navigator.userAgent.toLowerCase();
    if (window.sidebar) { // Mozilla, Firefox, Netscape
        window.sidebar.addPanel(title, url,"");
    } else if( window.external) { // IE or chrome
        if (browser.indexOf('chrome')==-1){ // ie
            window.external.AddFavorite( url, title);
        } else { // chrome
            alert('Please Press CTRL+D (or Command+D for macs) to bookmark this page');
        }
    }
    else if(window.opera && window.print) { // Opera - automatically adds to sidebar if rel=sidebar in the tag
        return true;
    }
    else if (browser.indexOf('konqueror')!=-1) { // Konqueror
        alert('Please press CTRL+B to bookmark this page.');
    }
    else if (browser.indexOf('webkit')!=-1){ // safari
        alert('Please press CTRL+B (or Command+D for macs) to bookmark this page.');
    } else {
        alert('Your browser cannot add bookmarks using this link. Please add this link manually.')
    }
}

可以通过按钮或链接来调用以上代码:

通过按钮调用

<input type="button" value="bookmark me"
onclick="addBookmark('http://buffernow.com','buffer now');"/>

通过链接调用

<a href="#" onclick="addBookmark('http://buffernow.com','buffer now')">收藏本页</a>

完整的HTML代码如下:

<html>
<head> <script type="text/javascript">
function addBookmark(url, title){
if (!url) {url = window.location}
    if (!title) {title = document.title}
    var browser=navigator.userAgent.toLowerCase();
    if (window.sidebar) { // Mozilla, Firefox, Netscape
        window.sidebar.addPanel(title, url,"");
    } else if( window.external) { // IE or chrome
        if (browser.indexOf('chrome')==-1){ // ie
            window.external.AddFavorite( url, title);
        } else { // chrome
            alert('Please Press CTRL+D (or Command+D for macs) to bookmark this page');
        }
    }
    else if(window.opera && window.print) { // Opera - automatically adds to sidebar if rel=sidebar in the tag
        return true;
    }
    else if (browser.indexOf('konqueror')!=-1) { // Konqueror
        alert('Please press CTRL+B to bookmark this page.');
    }
    else if (browser.indexOf('webkit')!=-1){ // safari
        alert('Please press CTRL+B (or Command+D for macs) to bookmark this page.');
    } else {
        alert('Your browser cannot add bookmarks using this link. Please add this link manually.')
    }
}
</script>

</head>
<body>
<input type="button" value="bookmark me"
onclick="addBookmark('http://buffernow.com', 'buffer Now');"/>
</body>
</html>
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的示例代码,实现了在页面上添加一个表格和书签功能: ```html <!DOCTYPE html> <html> <head> <title>带书签的表格页面</title> </head> <body> <h1>这是一个带书签的表格页面</h1> <table> <tr> <th>姓名</th> <th>年龄</th> <th>性别</th> </tr> <tr> <td>张三</td> <td>25</td> <td>男</td> </tr> <tr> <td>李四</td> <td>30</td> <td>女</td> </tr> <tr> <td>王五</td> <td>20</td> <td>男</td> </tr> </table> <button onclick="addBookmark()">添加书签</button> <script> function addBookmark() { if (window.sidebar && window.sidebar.addPanel) { // Firefox window.sidebar.addPanel(document.title, window.location.href, ""); } else if (window.external && ('AddFavorite' in window.external)) { // IE window.external.AddFavorite(location.href, document.title); } else if (window.opera && window.print) { // Opera var elem = document.createElement('a'); elem.setAttribute('href', window.location.href); elem.setAttribute('title', document.title); elem.setAttribute('rel', 'sidebar'); elem.click(); } else { // Other browsers alert('请使用Ctrl+D来添加书签!'); } } </script> </body> </html> ``` 在这个代码,我们首先创建了一个简单的表格,然后在页面上添加了一个按钮,触发 `addBookmark()` 函数。这个函数会检测当前的浏览器类型,然后使用不同的方式添加书签。在这个例子,我们使用了以下三种方式: 1. Firefox:使用 `window.sidebar.addPanel()` 方法添加书签; 2. IE:使用 `window.external.AddFavorite()` 方法添加书签; 3. Opera:创建一个 `<a>` 元素,并将其 `rel` 属性设置为 `'sidebar'`,然后触发 `click()` 方法添加书签。 最后,如果检测到其他浏览器,则提示用户使用 Ctrl+D 来添加书签

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值