我有一个ASP.NET网页中有一个按钮。点击按钮,应该在浏览器中保存书签,当用户点击书签时,应该浏览到http://google.com。使用JavaScript添加浏览器书签
如何确保它可以与几乎所有的标准浏览器一起使用,或者至少可以与IE,Mozilla Firefox,Opera和Google Chrome一起使用。
另一种情况是,我也以同样的方式创建第二个书签。但是当用户点击第二个书签时,它应该运行一段JavaScript代码。
我有一个ASP.NET网页中有一个按钮。点击按钮,应该在浏览器中保存书签,当用户点击书签时,应该浏览到http://google.com。使用JavaScript添加浏览器书签
如何确保它可以与几乎所有的标准浏览器一起使用,或者至少可以与IE,Mozilla Firefox,Opera和Google Chrome一起使用。
另一种情况是,我也以同样的方式创建第二个书签。但是当用户点击第二个书签时,它应该运行一段JavaScript代码。
我写了这段代码适用于IE,Firefox和Opera(不幸的是它不适用于Google Chrome)。
function bookmark()
{
var title = 'Google';
var url = 'http://google.com';
if (document.all) // Check if the browser is Internet Explorer
window.external.AddFavorite(url, title);
else if (window.sidebar) //If the given browser is Mozilla Firefox
window.sidebar.addPanel(title, url, "");
else if (window.opera && window.print) //If the given browser is Opera
{
var bookmark_element = document.createElement('a');
bookmark_element.setAttribute('href', url);
bookmark_element.setAttribute('title', title);
bookmark_element.setAttribute('rel', 'sidebar');
bookmark_element.click();
}
}
因安全原因无法完成。它曾经是可能的使用专有的IE命令,但我认为这以IE 7结束。其他人绝对不可能。
或者至少给用户添加一个书签的选项,即是否有可能要求用户的权限添加? – 2010-06-03 10:43:53
@Arjun我认为这个(询问用户的许可)是现在当你在IE中调用'window.external.AddFavorite'时发生的事情。除了要求用户请按Ctrl + D之外,我知道除此之外别无它法。 – 2010-06-03 10:48:22
在Firefox据我所知,目前还没有的功能,增加了一个普通的书签。只有一个边栏书签可以在Firefox中创建。
在这里你可以找到一个脚本,大多数浏览器的工作原理:
window.sidebar.addPanel(title, url,"");
它只是增加了一个侧边栏条目Firefox的,这是不是很用户:http://labnol.blogspot.com/2006/01/add-to-favorites-ie-bookmark-firefox.html
正如你可以在该行看到友善。
对于Firefox无需设置为书签任何JavaScript,只有冠军和相对的锚标记=“侧边栏”能做到这一点的功能
<a href="http://www.google.com" title="Google" rel="sidebar">Bookmark This Page</a>
我测试在FF9
但是,这将(正如我已经解释的)只为Firefox添加一个边栏。不幸的是,Chrome或Safari没有任何解决方案。 – 2ndkauboy 2010-06-03 11:19:09