Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Avatar do usuário
ADMIN
ADMIN
Tópico Autor
Mensagens: 17672
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Qr-code baseado na página atual

25-12-2010 09:44

Esse script é um qr-code que é criado com base na URL que o script está.

Você coloca o script em sua página, e automaticamente, a figura do qr-code é criada para o endereço atual da página.

Cria um arquivo chamado qrcode.js e coloque o seguinte nele:

var t_id = setInterval(animate,20); var pos=0; var dir=2; var len=0; function animate(){ var elem=document.getElementById('progress'); if(elem!=null){ if(pos==0)len += dir; if(len>32||pos>79)pos+=dir; if(pos>79)len-=dir; if(pos>79&&len==0)pos=0; elem.style.left=pos; elem.style.width=len; } } function remove_loading(){ this.clearInterval(t_id); var targelem=document.getElementById('loader_container'); targelem.style.display='none'; targelem.style.visibility='hidden'; var t_id=setInterval(animate,60); } var offsetfrommouse=[15,25]; //image x,y offsets from cursor position in pixels. Enter 0,0 for no offset var displayduration=0; //duration in seconds image should remain visible. 0 for always. var defaultimageheight = 40; // maximum image size. var defaultimagewidth = 40; // maximum image size. var timer; function gettrailobj(){if(document.getElementById)return document.getElementById("preview_div").style;} function gettrailobjnostyle(){if(document.getElementById)return document.getElementById("preview_div");} function truebody(){return(!window.opera && document.compatMode && document.compatMode!="BackCompat")?document.documentElement:document.body;} function hidetrail(){ gettrailobj().display="none"; document.onmousemove=""; gettrailobj().left="-500px"; clearTimeout(timer); } function showtrail(imagename,title,width,height){ i=imagename;t=title;w=width;h=height; timer=setTimeout("show('"+i+"',t,w,h);",200); } function show(imagename,title,width,height){ var docwidth=document.all? truebody().scrollLeft+truebody().clientWidth : pageXOffset+window.innerWidth - offsetfrommouse[0]; var docheight=document.all? Math.min(truebody().scrollHeight, truebody().clientHeight) : Math.min(window.innerHeight); if( (navigator.userAgent.indexOf("Konqueror")==-1 || navigator.userAgent.indexOf("Firefox")!=-1 || (navigator.userAgent.indexOf("Opera")==-1 && navigator.appVersion.indexOf("MSIE")!=-1)) && (docwidth>650 && docheight>500)) { ( width == 0 ) ? width = defaultimagewidth: ''; ( height == 0 ) ? height = defaultimageheight: ''; width+=30; height+=55; defaultimageheight=height; defaultimagewidth=width; document.onmousemove=followmouse; newHTML = '<div class="border_preview" style="width:'+ width +'px;height:'+ height +'px"><div id="loader_container"><div id="loader"><div align="center">Carregando imagem</div><div id="loader_bg"><div id=progress> </div></div></div></div>'; newHTML = newHTML + '<h2 class="title_h2">' + ' '+title + '</h2>' newHTML = newHTML + '<div class="preview_temp_load"><img onload="javascript:remove_loading();" src="' + imagename + '" border="0"></div>'; newHTML = newHTML + '</div>'; if(navigator.userAgent.indexOf("MSIE")!=-1 && navigator.userAgent.indexOf("Opera")==-1 ){ newHTML = newHTML+'<iframe src="about:blank" scrolling="no" frameborder="0" width="'+width+'" height="'+height+'"></iframe>'; } gettrailobjnostyle().innerHTML=newHTML; gettrailobj().display="block"; } } function followmouse(e){ var xcoord=offsetfrommouse[0]; var ycoord=offsetfrommouse[1]; var docwidth=document.all? truebody().scrollLeft+truebody().clientWidth : pageXOffset+window.innerWidth-15; var docheight=document.all? Math.min(truebody().scrollHeight, truebody().clientHeight) : Math.min(window.innerHeight); if (typeof e != "undefined"){ if (docwidth - e.pageX < defaultimagewidth + 2*offsetfrommouse[0]){ xcoord = e.pageX - xcoord - defaultimagewidth; // Move to the left side of the cursor } else { xcoord += e.pageX; } if (docheight - e.pageY < defaultimageheight + 2*offsetfrommouse[1]){ ycoord += e.pageY - Math.max(0,(2*offsetfrommouse[1] + defaultimageheight + e.pageY - docheight - truebody().scrollTop)); } else { ycoord += e.pageY; } } else if (typeof window.event != "undefined"){ if (docwidth - event.clientX < defaultimagewidth + 2*offsetfrommouse[0]){ xcoord = event.clientX + truebody().scrollLeft - xcoord - defaultimagewidth; // Move to the left side of the cursor } else { xcoord += truebody().scrollLeft+event.clientX } if (docheight - event.clientY < (defaultimageheight + 2*offsetfrommouse[1])){ ycoord += event.clientY + truebody().scrollTop - Math.max(0,(2*offsetfrommouse[1] + defaultimageheight + event.clientY - docheight)); } else { ycoord += truebody().scrollTop + event.clientY; } } gettrailobj().left=xcoord+"px"; gettrailobj().top=ycoord+"px"; } function MostraQR(res1,res2){ document.write("<a style=cursor:hand href=#><img onmouseover=showtrail('http://chart.apis.google.com/chart?chs="+res2+"x"+res2+"&cht=qr&choe=ISO-8859-1&chld=L|0&chl="+escape(document.location.href)+"','Endereço&nbsp;desta&nbsp;página',"+res2+","+res2+") style=border-left-color:#777777;border-bottom-color:#777777;border-top-color:#777777;border-right-color:#777777 onmouseout=hidetrail() src=http://chart.apis.google.com/chart?chs="+res1+"x"+res1+"&cht=qr&choe=ISO-8859-1&chld=H|0&chl="+escape(document.location.href+"&qr=+++++++++++++++1")+" border=0 width="+res1+" height="+res1+"></a><div id=preview_div style=display:none;z-index:200;position:absolute></div><div style=left:0px;visibility:hidden;position:absolute;top:0px></div>"); }

Abaixo deixo a chamada para o js criado e um exemplo de uso.

<script src="qrcode.js" type="text/javascript"></script> <script type="text/javascript"> if(document.location.href.toLowerCase().indexOf("https://")!=0){ document.write("<div>"); document.write("<center><small><a href=http://pt.wikipedia.org/wiki/QR_Code target=_blank>QR Code</a> desta URL</small><br>"); MostraQR(150,500); document.write("<br><small>Passe o mouse para ampliar</small></center></div>"); } </script>

0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado