关于backtop.js文件判断浏览器屏幕滚动条代码
老师可以发下源码吗?照着打的还是会出现问题,当滚动一屏时返回顶部的按钮显示不出来,只有刷新可以显示,哪里错了呢?
define(['jquery','scrollto'],function($,scrollto){ function BackTop(el,opts){ this.opts=$.extend({},BackTop.DEFAULTS,opts); this.$el=$(el); this.scroll=new scrollto.ScrollTo({ dest:0, speed:this.opts.speed }); this._checkPosition(); if(this.opts.mode =='move'){ this.$el.on('click',$.proxy(this._move,this)); }else{ this.$el.on('click',$.proxy(this._go,this)); } $(window).on('scroll',$.proxy(this._checkPosition.this)); } BackTop.DEFAULTS={ mode:'move', pos:$(window).height(), speed:800 } BackTop.prototype._move=function(){ this.scroll.move(); } BackTop.prototype._go=function(){ this.scroll.go(); } BackTop.prototype._checkPosition = function() { var $el=this.$el; if ($(window).scrollTop() > this.opts.pos){ //alert(this.opts.pos) // console.log($(window).scrollTop) this.$el.fadeIn() }else{ this.$el.fadeOut(); } }; $.fn.extend({ backtop:function(opts){ return this.each(function(){ new BackTop(this,opts) }) } }) return { BackTop:BackTop }; })