How to add smooth "Back To Top" Button for blogger (Easy Steps) | Web & Cash

Wednesday, August 7, 2013

// // Leave a Comment

How to add smooth "Back To Top" Button for blogger (Easy Steps)

Many blogger's have lot of comments for their articles , what makes scrolling the blog up and down a little bit difficult ,so to simplify the up scrolling task , we will use "Back To Top" button in the end of the page(Put it wherever you want)

So the first step i recommend is to find a good arrow image that will be used for the "Back to top" Button ( if you wanna use a link instead of a picture just ignore all the steps and go to the code below).

Then upload the picture in image hosting website like imageshack or just in picasa ,if you find it difficult chose one of the folowing pictures ,click right on the image you like and copy the link ,then past it in the field highlighted in orange.









Now go to your Blog Layout Add a Gadget and past this code (don't forget to put the picture link)

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

<script type="text/javascript" >

var scrolltotop={
    //startline: set the number of pixel for the button to show up
       setting: {startline:900, scrollto: 0, scrollduration:1000, fadeduration:[500, 100]},
    controlHTML: '<img src="PICTURE LINK" />',
    controlattrs: {offsetx:5, offsety:5}, //the button will be positioned in the bottom right corner increase the numbers if you wanna set it somewhere else
    anchorkeyword: '#top',
    state: {isvisible:false, shouldvisible:false},
    scrollup:function(){
        if (!this.cssfixedsupport)
            this.$control.css({opacity:0})
        var dest=isNaN(this.setting.scrollto)? this.setting.scrollto : parseInt(this.setting.scrollto)
        if (typeof dest=="string" && jQuery('#'+dest).length==1)
            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.scrollLeft() + $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
            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()!='')
                mainobj.$control.css({width:mainobj.$control.width()})
            mainobj.togglecontrol()
            $('a[href="' + mainobj.anchorkeyword +'"]').click(function(){
                mainobj.scrollup()
                return false
            })
            $(window).bind('scroll resize', function(e){
                mainobj.togglecontrol()
            })
        })
    }
}
scrolltotop.init()
</script>

Then SAVE ,That's it ,enjoy your "Back To Top " Button ↑ ,if you have any questions, don't hesitat to comment ,i will try to answer as quick as possible .

Author: Idriss Toumi

Idriss is a blogger and Web Designer/Developer.

In addition to curating Web And Cash, you can find Idriss on Twitter,Facebook or add him to your circle on Google+ .

0 comments:

Post a Comment