Posted in Javascript onJanuary 09, 2007
兼容IE5+/Win, Firefox, Netscape 6+, Opera 7+, Safari, Konqueror 3, IE5/Mac, 还有 iCab 3.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> addbookmark cross all browser - http://www.never-online.net </title> <meta http-equiv="ImageToolbar" content="no" /> <meta name="author" content="never-online, BlueDestiny"/> <meta name="keywords" content="never modules, Mozilla CSS, C#, .net, Reference, BlueDestiny, never-online"/> <meta name="description" content="addbookmark cross all browser, javascript reference, c sharp artilces"/> <meta name="creator.name" content="never-online, BlueDestiny" /> <style type="text/css" media="all" title="Default"> body { color: windowtext; background: appworkspace; font-family: Arial; font-size:9pt; line-height:150%; } h1, h2, h3, h4 { color:#fff; font-family: "Trebuchet MS",Verdana, Arial, Helvetica, sans-serif; } a { color:#fff; } div#header { text-align:center; color:#eee; } div#header a { color:#fff; font-weight:bold; } div#footer { margin-top:10px; text-align:center; color:#eee; font-size:8pt; } div#operator { margin:20px 0 20px 0; } div#operator ul, div#operator li { margin:0; padding:0; } div#operator li { display:inline; list-style-type:none; margin-right:5px; margin-left:5px; border:1px solid #000; padding:5px; color:#000; background-color:#eee; cursor:hand; cursor:pointer; } hr { margin:10px 0 10px 0; } div.wrapper { text-align:center; } div.content { border:1px solid #333; background-color:buttonface; color:#000; padding:10px; margin:10px 0 10px 0; font-size:10pt; line-height:150%; text-align:left; width:80%; margin-left: auto; margin-right: auto; -moz-box-sizing:border-box; } div.content a { color:#000; } div.content h4 { color:#000; margin-left:10px; text-align:left; } </style> <script type="text/javascript"> //<![CDATA[ /* * Copyright 2006 Dynamic Site Solutions. * Free use of this script is permitted for non-commercial applications, * subject to the requirement that this comment block be kept and not be * altered. The data and executable parts of the script may be changed * as needed. Dynamic Site Solutions makes no warranty regarding fitness * of use or correct function of the script. Terms for use of this script * in commercial applications may be negotiated; for this, or for other * questions, contact "license-info@dynamicsitesolutions.com". * * Script by: Dynamic Site Solutions -- http://www.dynamicsitesolutions.com/ * Last Updated: 2006-08-03 */ //IE5+/Win, Firefox, Netscape 6+, Opera 7+, Safari, Konqueror 3, IE5/Mac, iCab 3 var addBookmarkObj = { init:function() { if(!document.getElementById || !document.createTextNode) return; var cont=document.getElementById('addBookmarkContainer'); if(!cont) return; var a=document.createElement('a'); a.href=location.href; if(!window.opera) { // this doesn't work in Opera 7+ if the link has an // onclick handler, so we only add it if the browser isn't Opera. a.onclick=function() { addBookmarkObj.exec(this.href,this.title); return false; } } a.rel='sidebar'; // this makes it work in Firefox and Opera 7+ a.title=document.title; a=cont.appendChild(a); a.appendChild(document.createTextNode('Bookmark This Page')); }, exec:function(url, title) { var isKonq=(isLikelyKonqueror3 && isLikelyKonqueror3()); var isMac=(navigator.userAgent.toLowerCase().indexOf('mac')!=-1); var buttonStr = isMac?'Command/Cmd':'CTRL'; if(window.external && (!document.createTextNode || (typeof(window.external.AddFavorite)=='unknown'))) { // IE4/Win generates an error when you // execute "typeof(window.external.AddFavorite)" // In IE7 the page must be from web server, not directly from a local // file system, otherwise, you get a permission denied error. window.external.AddFavorite(url, title); // IE/Win } else if(isKonq) { alert('You need to press CTRL + B to bookmark our site.'); } else if((window.sidebar && (navigator.userAgent.toLowerCase().indexOf('firefox')!=-1)) || (window.opera && opera.buildNumber && !isNaN(opera.buildNumber()))) { void(0); // do nothing here (Firefox or Opera 7+) } else if(window.opera) { // older Opera alert('You need to press '+buttonStr+' + T to bookmark our site.'); } else if(window.home) { // Netscape, iCab alert('You need to press '+buttonStr+' + D to bookmark our site.'); } else if(!window.print || isMac) { // IE5/Mac and Safari 1.0 alert('You need to press Command/Cmd + D to bookmark our site.'); } else { alert('In order to bookmark this site you need to do so manually '+ 'through your browser.'); } } } function isLikelyKonqueror3() { if(!document.getElementById) return false; if(document.defaultCharset || window.opera || !window.print) return false; if(window.home) return false; /* Konqueror doesn't support this but Firefox, which has silent support for document.all when in Quirks Mode does */ if(document.all) return true; // Konqueror versions before 3.4 var likely = 1; // testing for silent document.all support; try-catch used to keep it from // generating errors in other browsers. // try-catch causes errors in IE4 so we use the eval() to hide it. // try { // var str=document.all[0].tagName; // } catch(err) { likely=0; } eval("try{var str=document.all[0].tagName;}catch(err){likely=0;}"); return likely; } function dss_addEvent(el,etype,fn) { if(el.addEventListener && (!window.opera || opera.version) && (etype!='load')) { el.addEventListener(etype,fn,false); } else if(el.attachEvent) { el.attachEvent('on'+etype,fn); } else { if(typeof(fn) != "function") return; var tempFunc = el['on'+etype]; el['on'+etype] = function() { if(typeof(tempFunc) == "function") tempFunc(); fn(); } } } dss_addEvent(window,'load',addBookmarkObj.init); //]]> </script> </head> <body id="www.never-online.net"> <div id="header"><h1> cross-browser addBookmark </h1>by www.dynamicsitesolutions.com<hr/></div> <div class="wrapper"> <div class="content"> <h4> demonstration </h4> <div id="addBookmarkContainer"></div> </div> </div> <div id="footer">collected by <a href="http://www.never-online.net">http://www.never-online.net</a></div> </body> </html>
添加到收藏夹代码(兼容几乎所有的浏览器)
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@