Botão //Repositório JavaScript
Descrição
Transforma uma imagem em um botão, permite setar a imagem ao: passar o mouse, tirar o mouse, clicar e ao soltar o botão do mouse.
Criado: 2005.10.02 - Modificado 2005.10.03
Criado: 2005.10.02 - Modificado 2005.10.03
Dependências
Código (Download)
//+ Carlos R. L. Rodrigues
//@ http://jsfromhell.com/dhtml/button [rev. #1]
Button = function(id){
var o = this;
o.ini = (o.b = document.images[id]).src;
o.i = {}, o.over = o.out = o.click = o.release = null;
};
Button.prototype.checkImage = function(i){
return !(i.fileSize == -1 || !i.width);
};
Button.prototype.init = function(){
var o = this, b = o.b;
o.out && ((o.i.o = new Image()).src = o.out);
addEvent(b, "mouseout", function(){
b.src = !o.out ? o.ini : o.checkImage(o.i.o) ? o.out : b.src;
});
if(o.over){
(o.i.h = new Image()).src = o.over;
addEvent(b, "mouseover", function(){
o.checkImage(o.i.h) && (b.src = o.over);
});
}
if(o.click){
(o.i.c = new Image()).src = o.click;
addEvent(b, "mousedown", function(){
o.checkImage(o.i.c) && (b.src = o.click);
});
}
if(o.release || o.click){
o.release && ((o.i.r = new Image()).src = o.release);
addEvent(b, "mouseup", function(){
var c = o.i.r || o.i.h || o.i.o;
b.src = c && o.checkImage(c) ? c.src : o.ini;
});
}
};
Exemplo (Exemplo)
<img src="http://www.google.com.br/images/logo_sm.gif" style="border:1px solid #f00;" id="imagem1" alt="imagem" /><br />Over
<hr /><img src="http://www.google.com.br/images/logo_sm.gif" style="border:1px solid #0f0;" id="imagem2" alt="imagem" /><br />Click
<hr /><img src="http://www.google.com.br/images/logo_sm.gif" style="border:1px solid #00f;" id="imagem3" alt="imagem" /><br />Out
<hr /><img src="http://www.google.com.br/images/logo_sm.gif" style="border:1px solid #f0f;" id="imagem4" alt="imagem" /><br />Release
<script type="text/javascript">
//<![CDATA[
var j, i, img = ["imagem1", "imagem2", "imagem3", "imagem4"],
s = "http://www.google.com.br/intl/pt-BR_br/images/logo.gif";
for(j = img.length; j--;){
i = new Button(img[j]);
if(j == 0) i.over = s;
else if(j == 1) i.click = s;
else if(j == 2) i.out = s;
else i.release = s;
i.init();
}
//]]>
</script>
Ajuda
Construtor
- Button(Id: String)
-
Gera uma instância de Button.
- Id
- Id da imagem a ser usada como botão
Propriedades
- Button.over: String
- caminho da imagem que será exibida ao passar o mouse em cima da imagem
- Button.click: String
- caminho da imagem que será exibida ao clicar
- Button.release: String
- caminho da imagem que será exibida ao soltar o botão do mouse
- Button.out: String
- caminho da imagem que será exibida ao tirar o mouse
Ajuste apenas as propriedades que você desejar, as que não forem setadas, serão ignoradas.
Ranque (Votos: 39)
2.05