6 de novembro de 2013

Tutorial: Botão Voltar ao Topo

Botão voltar ao topo

Olá pessoal, sentiram saudades? HAHA

Eu estava percebendo que aqui no blog estava faltando uma coisa importante, que eu sempre sinto falta em outros sites, mas eu sempre esquecia o que era. HAHA
Mas hoje eu lembrei e já coloquei ( talvez eu mudo a imagem ), que é aquele botão que a página para o topo, sabe?

Procurei em alguns blogs e encontrei no Cheirinho Doce o código abaixo:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>

<script type='text/javascript' language='Javascript'>

var scrolltotop={
//startline: Integer. Number of pixels from top of doc scrollbar is scrolled before showing control
//scrollto: Keyword (Integer, or "Scroll_to_Element_ID"). How far to scroll document up when control is clicked on (1=top).
setting: {startline:100, scrollto: 0, scrollduration:1000, fadeduration:[500, 100]},
controlHTML: '<img src="URL_DA_IMAGEM"/>', //HTML for control, which is auto wrapped in DIV w/ ID="topcontrol"
controlattrs: {offsetx:5, offsety:5}, //offset of control relative to right/ center of window corner
anchorkeyword: '#top', //Enter href value of HTML anchors on the page that should also act as "Scroll Up" links
state: {isvisible:false, shouldvisible:false},
scrollup:function(){
if (!this.cssfixedsupport) //if control is positioned using JavaScript
this.$control.css({opacity:0}) //hide control immediately after clicking it
var dest=isNaN(this.setting.scrollto)? this.setting.scrollto : parseInt(this.setting.scrollto)
if (typeof dest=="string" && jQuery('#'+dest).length==1) //check element set by string exists
dest=jQuery('#'+dest).offset().top
else
dest=0
this.$body.animate({scrollTop: dest}, this.setting.scrollduration);
},
keepfixed:function(){
var $window=jQuery(window)
var controlx=$window.scrollRight() + $window.width() - this.$control.width() - this.controlattrs.offsetx
var controly=$window.scrollTop() + $window.height() - this.$control.height() - this.controlattrs.offsety
this.$control.css({left:controlx+'px', top:controly+'px'})
},
togglecontrol:function(){
var scrolltop=jQuery(window).scrollTop()
if (!this.cssfixedsupport)
this.keepfixed()
this.state.shouldvisible=(scrolltop>=this.setting.startline)? true : false
if (this.state.shouldvisible && !this.state.isvisible){
this.$control.stop().animate({opacity:1}, this.setting.fadeduration[0])
this.state.isvisible=true
}
else if (this.state.shouldvisible==false && this.state.isvisible){
this.$control.stop().animate({opacity:0}, this.setting.fadeduration[1])
this.state.isvisible=false
}
},
init:function(){
jQuery(document).ready(function($){
var mainobj=scrolltotop
var iebrws=document.all
mainobj.cssfixedsupport=!iebrws || iebrws && document.compatMode=="CSS1Compat" && window.XMLHttpRequest //not IE or IE7+ browsers in standards mode
mainobj.$body=(window.opera)? (document.compatMode=="CSS1Compat"? $('html') : $('body')) : $('html,body')
mainobj.$control=$('<div id="topcontrol">'+mainobj.controlHTML+'</div>')
.css({position:mainobj.cssfixedsupport? 'fixed' : 'absolute', bottom:mainobj.controlattrs.offsety, right:mainobj.controlattrs.offsetx, opacity:0, cursor:'pointer'})
.attr({title:'Scroll Back to Top'})
.click(function(){mainobj.scrollup(); return false})
.appendTo('body')
if (document.all && !window.XMLHttpRequest && mainobj.$control.text()!='') //loose check for IE6 and below, plus whether control contains any text
mainobj.$control.css({width:mainobj.$control.width()}) //IE6- seems to require an explicit width on a DIV containing text
mainobj.togglecontrol()
$('a[href="' + mainobj.anchorkeyword +'"]').click(function(){
mainobj.scrollup()
return false
})
$(window).bind('scroll resize', function(e){
mainobj.togglecontrol()
})
})
}
}
scrolltotop.init()
</script>

Siga os passos abaixo para adicionar no layout:

1º- Vá em Layout > Adicionar Gadget > HTML/JavaScript
2º- E cole o código.

Simples né? Para mudar a imagem é só trocar o trecho em lilás ( URL_DA_IMAGEM ) no código


Algumas setinhas para vocês ( por favor, dê créditos se usar ):












11 comentários

  1. Nossa, era o que estava faltando no meu blog. O aniversário de um ano do blog esta chegando e eu estou pensando seriamente em trocar o layout, e acho que esse vai ser umas ideias que eu vou implementar ♥

    http://leitecombiscotos.blogspot.com.br/

    ResponderExcluir
  2. Oi Amanda!
    adoreiiii esse teu post, eu tenho um botão e nunca consegui mudar, vou tentar fazer isso, teu post já ta salvo aqui!

    Adorei!
    beijoo
    Meninices da vida

    ResponderExcluir
  3. Adorei o tutorial!! Esse botão é essencial no blog *-*
    Beijos
    www.entendademoda.com.br

    ResponderExcluir
    Respostas
    1. É mesmo, eu tinha esquecido de colocar no meu ):

      Excluir
  4. Adorei, é o primeiro código que funciona... Obrigada <3 HEUHE

    http://dezparaasseis.blogspot.com.br/

    ResponderExcluir
  5. Acho que essas setas não podem faltar em um blog.
    Amei as que você fez <3

    http://viagem-a-terra-do-nunca.blogspot.com.br/

    ResponderExcluir
  6. Muito obrigada pelo tutorial, me ajudou muito. Um abraço! <3 48janeiros

    ResponderExcluir

BLOG UNTIL WE DIE | TODOS OS DIREITOS RESERVADOS 2014-2015 © | DESIGN E DESENVOLVIMENTO: SANYT DESIGN