Caixa Para Abrir Imagens
Caixa para abrir imagens
Escrito por weaver em
JavaScript e Ajax. Data: 28/04/2008
Licença: Alguns direitos reservados. Dar créditos ao autor e linkar este original
Ver tópico original no fórum.
ver aqui. (se quiser ver o html css ou js)
para usar é bem simples, é só por o JS e brincar com o css e depois nos links fazer assim:
<a rel="iloader" href="firefox_.jpg"><img src="firefox.jpg"/></a>
js
CODE
var usando=0;
$ = function(el){
if(document.getElementById) return document.getElementById(el);
else alert("Erro ao capturar elemento via 'id'");
}
$TAG = function(tag){
if(document.getElementsByTagName) return document.getElementsByTagName(tag);
else alert("Erro ao capturar elementos via 'tag'");
}
function iloader(imagem_){
var ns = (navigator.appName == "Netscape")?true:false;
var caixa_ = document.createElement('div');
caixa_.setAttribute("id",'caixa');
document.body.appendChild(caixa_);
caixa_.innerHTML = "<div id='fechar'><a href='#'>Fechar [x]</a></div><img src='"+imagem_+"'/>";
var mouseX;
var mouseY;
var arrastando;
document.body.onmousedown = function(e){
mouseX = (ns)?e.pageX:event.clientX;
mouseY = (ns)?e.pageY:event.clientY;
mouseX = mouseX - caixa_.offsetLeft;
mouseY = mouseY - caixa_.offsetTop;
arrastando = true;
}
document.body.onmousemove = function(e){
if(arrastando == true){
var mmX = (ns)?e.pageX:event.clientX;
var mmY = (ns)?e.pageY:event.clientY;
caixa_.style.top = mmY - mouseY+'px';
caixa_.style.left = mmX - mouseX+'px';
}
}
document.body.onmouseup = function(){
arrastando = false;
}
$('fechar').onclick = function(){
usando=0;
document.body.removeChild(this.parentNode);
}
}
window.onload = function(){
var ligacao = $TAG('a');
for(var i in ligacao){
if(ligacao[i].rel == "iloader"){
ligacao[i].onclick = function(){
usando++;
(usando < 2)?iloader(this.href):false;
return false;
}
}
}
}
css
CODE
*{border: 0;}
#imagens{
margin: 10px;
list-style: none;
}
#caixa{
width: auto;
height: auto;
top: 50px;
left: 250px;
position: absolute;
border: 15px solid #006699;
border-top: 30px solid #006699;
background: #FFF;
cursor: move;
}
#fechar{
width: 80px;
height: 20px;
font-family: Verdana;
font-size: 14px;
background: #006699;
}
#fechar a{
color: #FFF;
}
@se quiserem melhorar usem o evento onready do micox povo ^^
até mais, é algo simples mas foi de boa intenção