我有一个 ASP.NET 网页,其中有一个按钮。单击该按钮,应在浏览器中保存一个书签,当用户单击该书签时,它应浏览到http://google.com。
我如何确保它适用于几乎所有标准浏览器,或者至少适用于 IE、Mozilla Firefox、Opera 和 Google Chrome。
另一种情况,我也以同样的方式创建了第二个书签。但是当用户点击第二个书签时,它应该运行一段 JavaScript 代码。
我有一个 ASP.NET 网页,其中有一个按钮。单击该按钮,应在浏览器中保存一个书签,当用户单击该书签时,它应浏览到http://google.com。
我如何确保它适用于几乎所有标准浏览器,或者至少适用于 IE、Mozilla Firefox、Opera 和 Google Chrome。
另一种情况,我也以同样的方式创建了第二个书签。但是当用户点击第二个书签时,它应该运行一段 JavaScript 代码。
对于 FireFox,无需为书签设置任何 javascript,只有带有title和rel="sidebar"的锚标记可以执行此功能
<a href="http://www.google.com" title="Google" rel="sidebar">Bookmark This Page</a>
我在FF9上测试过
我编写的这段代码适用于 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 中结束。在其他版本中绝对不可能。
据我所知,在 Firefox 中,目前没有添加常规书签的功能。在 Firefox 中只能创建侧边栏书签。
在这里您可以找到适用于大多数浏览器的脚本:http: //labnol.blogspot.com/2006/01/add-to-favorites-ie-bookmark-firefox.html
正如你在这一行看到的:
window.sidebar.addPanel(title, url,"");
它只是为 Firefox 添加了一个侧边栏条目,这不是很用户友好。