Оригинальная кнопка вверх/вниз для Blogger

Привет, друзья. Хочу вам предложить код интересной кнопки вверх - вниз для вашего блога. У меня уже есть несколько постов на эту тему. Здесь предложено 10 вариантов кнопок. И ещё симпатичная кнопка вверх как в ВКонтакте.


Та, которую сегодня рекомендую вам, отличается тем, что при заходе на страницу отображена стрелка вниз. А при скроллинге появляется ещё и кнопка вверх. Так что ваши читатели моментально могут попасть в самый конец или начало страницы. Она у меня стояла на этом блоге раньше, но пришлось расстаться с ней уже после смены шаблона.


Если вам пригодится такая кнопка вверх - вниз, забирайте себе этот код.

<a rel="nofollow" style="display:scroll;position:fixed;bottom:5px;right:5px;" href="#footer-1" title="Вниз"><img src="http://4.bp.blogspot.com/-PxH1iBhV0hE/UJ93q8Cvl5I/AAAAAAAALPg/MuR04uMBw3M/s1600/hb-arrow-down.png"/></a>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/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 (0=top).
    setting: {startline:100, scrollto: 0, scrollduration:1000, fadeduration:[500, 100]},
    controlHTML: '<img src="http://4.bp.blogspot.com/-mwSVtgAlvsI/T1uawwxUkWI/AAAAAAAABFs/iU9OdqgUQkE/s1600/hb-arrow-up.png" />', //HTML for control, which is auto wrapped in DIV w/ ID="topcontrol"
    controlattrs: {offsetx:5, offsety:53}, //offset of control relative to right/ bottom 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.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 //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:'Вверх'})
                .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>


Код устанавливается обычным способом в гаджет HTML/JavaScript. Переместите его куда - нибудь в подвал блога, чтобы не мешался. Синим я отметила адреса картинки - кнопки в формате png. Можно нарисовать самим в любом редакторе или найти в интернете.

Розовым цветом скрипт библиотеки jQuery. Если ваша кнопочка вверх - вниз по каким - то причинам капризничает, просто удалите эту строку.

Желаю вам удачи и хороших летних денёчков. Спасибо за визит и до встречи.


Здесь вы можете оформить подписку на новые шпаргалки

Введите Ваш email


6 комментариев:

  1. Спасибо, Виктория! Моя подруга и коллега у меня уже спрашивала, как установить такие кнопки. Я пошлю ей ссылку на твой блог. Спасибо!

    ОтветитьУдалить
    Ответы
    1. Ирина, пожалуйста. Эта кнопка и правда удобная. Быстро перебрасывает вверх -вниз страницы.

      Удалить
  2. Виктория,огромное спасибо! Я установила кнопку,очень удобно!!!!!

    ОтветитьУдалить
    Ответы
    1. Пожалуйста, Светлана. Хорошо, что пригодилось.

      Удалить
  3. Спасибо большое, стрелка класс!

    ОтветитьУдалить
  4. Ирина, пожалуйста. Нужная фишка для блога.

    ОтветитьУдалить

ВСЕГДА РАДА УСЛЫШАТЬ ВАШЕ МНЕНИЕ!
Ели у вас возникла необходимость опубликовать код в комментарии, то воспользуйтесь encoder HTML