Memasang Tombol Back to Top dengan Efek JQuery
Motivation - Sebelumnya saya memposting Tutorial "Memasang Tombol Back to Top". Kali ini saya akan Update Tutorial ini dengan Menambahkan Efek JQuery, Sesuai dengan Judul Postingan ini "Memasang Tombol Back to Top dengan Efek JQuery".
Kita Langsung Saja ke Cara Pemasangan.
- Login ke Blogger >> Dashboard >> Tata Letak >> Add Gadget >> HTML/Javascript
- Disini Ada dua Efek
- Efek Slowly to Top
- Efek Fast to Top
- Efek Slowly to Top, Masukkan Kode di bawah ini :
<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: 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="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXrEkpaienfXQzyJE00CNbzHEhLnwn_ezDQ1WluKxNUOBaDQvXlqPoELlnyOAQWQzzBX-qyD0aFLJjlsOybiOPOgUYc07W9-2WHEdkY98fCXKLQx-3HyPNZNR1NdgKHQcoBi2UA8fhZqM/s1600/TO-TOP.png" />', //HTML for control, which is auto wrapped in DIV w/ ID="topcontrol"
controlattrs: {offsetx:5, offsety:5}, //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:'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>
- Efek Fast to Top, Masukkan Kode Ini:
<br /><script type="text/javascript">
/***********************************************
* Scroll To Top Control script- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* Modified by www.MyBloggerTricks.com
* Republish by http://utility-share.blogspot.com
* This notice MUST stay intact for legal use
* Visit Project Page at http://www.dynamicdrive.com for full source code
***********************************************/
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://i1198.photobucket.com/albums/aa452/Lutfi14/back-to-top.png" />', //HTML for control, which is auto wrapped in DIV w/ ID="topcontrol"
controlattrs: {offsetx:5, offsety:5}, //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:'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>
- Ganti Teks Ber-Stabilo Biru dengan url link gambar Back to Top Anda.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIsmKVQrG0a3-3CYr-bYtDtHaQyX0o-PCqpoTY-CMMZPIUXiAIjqaUwCX86AUPDtsZCjjraxm5RSoj-KvF8MYZDWJFAdFJHElFlYiI7U8uZwXU0ty1z96Z7S_kmS1ee6KumvJL5AwTgDP5/s1600/back+to+top1-motivation.gif
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDF686UMwVO3ih-5axsD_ItL7EuWeY1EaSLG9ZiUGxyY7jr3iwfd1QeeQ5PUNfWYUAuqUYd8buWq2KiuFAo_YeG6Fo7F7Le7jFe65Nx2WKEZYFnXQRKUAZ89OXrQzUf_xK7DatRprJU0IC/s1600/back+to+top2-motivation.png
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgvb0_i5k4uXg4pcvqVi9F2AJ4p2bSVPnN4g6cdD0eBcyKCcpZf-5J_EzV9chM4uc2MCSXHcYPI8eGdB8MOB_wpybukl41WhHHB4ATLxJSKj5Hab-wJWbOY7xeQcNb_LR66O1tpC-Jm_9gI/s1600/back+to+top3-motivation.png
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0klFcUxAT9hE1pf4afWAKc-gbMdRtVleiVNIqJt28wxo8h5hnCuxB3wXYrAFU0TrB85gErG9hrsznYq_qM3yxU7gZtl9X8jN9Pq5q4T0qf0iGf_MdgJmvARI4Jc_um5Wndta9r45jSFo5/s1600/back+to+top4-motivation.png
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9QERUWvZN4Nw4C1RQ43dmGfU3g5qZ2JX2bh-P-Q-mH4LDV83oDX3rQRSL9ralrPCmkSAqnu-5qIPoRYPHID3qYC62Av-ccvM8c3XDcnfB_N32tXGkTde8wvNnonSQsmVG4cr5C0hXuYQT/s1600/Back+To+Top+B-Motivate.png
Nah, Itulah Beberapa Tombol Back to Top dengan Efek JQuery yang bisa saya bagikan kali ini. Semoga Bermanfaat. Terima Kasih.
COMMENTS