С нами с 12.12.06
Сообщения: 871
Рейтинг: 381
|
Добавлено: 17/07/08 в 02:10 |
Раньше всегда юзал этот скрипт
Код: |
<script type="text/javascript">
function addBookmark(url, title)
{
if (!url) url = location.href;
if (!title) title = document.title;
//Gecko
if ((typeof window.sidebar == "object") && (typeof window.sidebar.addPanel == "function")) window.sidebar.addPanel ("DESCRIPTION", "http://domain.com/", "");
//IE4+
else if (typeof window.external == "object") window.external.AddFavorite("http://domain.com/", "Description");
//Opera7+
else if (window.opera && document.createElement)
{
var a = document.createElement('A');
if (!a) return false; //IF Opera 6
a.setAttribute('rel','sidebar');
a.setAttribute('href',url);
a.setAttribute('title',title);
a.click();
}
else return false;
return true;
}
</script>
|
в последней опере 9.5 он у меня не работает, не работает в сафари, в ИЕ даже не проверял.
Есть ли какие нить готовые решения для установки букмарка на большенстве юзаемых браузерах?
|
|
|
|
С нами с 09.08.06
Сообщения: 171
Рейтинг: 109
|
Добавлено: 17/07/08 в 13:03 |
Гдето сдесь уже было, вот сам скрипт, сохраняеш его как add_bookmark.js
Код: | /*
* Copyright 2006-2007 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: 2007-06-17
*/
//IE5+/Win, Firefox, Netscape 6+, Opera 7+, Safari, Konqueror 3, IE5/Mac, iCab 3
var addBookmarkObj = {
linkText:'Bookmark This Page',
addTextLink:function(parId){
var a=addBookmarkObj.makeLink(parId);
if(!a) return;
a.appendChild(document.createTextNode(addBookmarkObj.linkText));
},
addImageLink:function(parId,imgPath){
if(!imgPath || isEmpty(imgPath)) return;
var a=addBookmarkObj.makeLink(parId);
if(!a) return;
var img = document.createElement('img');
img.title = img.alt = addBookmarkObj.linkText;
img.src = imgPath;
a.appendChild(img);
},
makeLink:function(parId) {
if(!document.getElementById || !document.createTextNode) return null;
parId=((typeof(parId)=='string')&&!isEmpty(parId))
?parId:'addBookmarkContainer';
var cont=document.getElementById(parId);
if(!cont) return null;
var a=document.createElement('a');
a.href=location.href;
if(window.opera) {
a.rel='sidebar'; // this makes it work in Opera 7+
} else {
// 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.title=document.title;
return cont.appendChild(a);
},
exec:function(url, title) {
// user agent sniffing is bad in general, but this is one of the times
// when it's really necessary
var ua=navigator.userAgent.toLowerCase();
var isKonq=(ua.indexOf('konqueror')!=-1);
var isSafari=(ua.indexOf('webkit')!=-1);
var isMac=(ua.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 a web server, not directly from a local
// file system, otherwise, you will 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.opera) {
void(0); // do nothing here (Opera 7+)
} else if(window.home || isSafari) { // Firefox, Netscape, Safari, 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 isEmpty(s){return ((s=='')||/^\s*$/.test(s));}
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;
if(typeof(window.earlyNS4)=='undefined') {
// to prevent this function from crashing Netscape versions before 4.02
window.earlyNS4=((navigator.appName.toLowerCase()=='netscape')&&
(parseFloat(navigator.appVersion)<4.02)&&document.layers);
}
if((typeof(el['on'+etype])=="function")&&!window.earlyNS4) {
var tempFunc = el['on'+etype];
el['on'+etype]=function(e){
var a=tempFunc(e),b=fn(e);
a=(typeof(a)=='undefined')?true:a;
b=(typeof(b)=='undefined')?true:b;
return (a&&b);
}
} else {
el['on'+etype]=fn;
}
}
}
dss_addEvent(window,'load',addBookmarkObj.addTextLink);
// to make multiple links, do something like this:
/*
dss_addEvent(window,'load',function(){
var f=addBookmarkObj.addTextLink;
f();
f('otherContainerID');
});
*/
// below is an example of how to make an image link with this
// the first parameter is the ID. If you pass an empty string it defaults to
// 'addBookmarkContainer'.
/*
dss_addEvent(window,'load',function(){
addBookmarkObj.addImageLink('','/images/add-bookmark.jpg');
});
*/
|
на странице размещается "контейнер" (какой-то элемент с заданным id),а скрипт уже после загрузки страницы наполняет его в зависимости от определенного типа броузера.
<script type="text/javascript" src="/js/add_bookmark.js">
</script>
<p id="addBookmarkContainer"></p>
Невидел еще браузера, где он не работал бы, вот сайт http://www.dynamicsitesolutions.com/javascript/add-bookmark-script/
|
|
|
|
Cracked by Bill Gilbert
С нами с 16.09.03
Сообщения: 4228
Рейтинг: 2814
|
Добавлено: 03/10/08 в 21:26 |
А можно как-то сделать, чтобы вместо вот этой фигни <p id="addBookmarkContainer"></p> просто в урл код какой-нить вставлять, а то мне весь диз эта фигня портит.
|
|
|
|
Текстовая реклама в форме ответа Заголовок и до четырех строчек текста Длина текста до 350 символов Купить рекламу в этом месте! |
|
Спонсор раздела
|