【发布时间】:2015-04-06 06:27:12
【问题描述】:
我遵循了各种关于创建淡入/淡出 jQuery scrollTo 函数的教程。但是似乎与 css display:none 有一些冲突,因为它没有显示在页面上,如果我删除 css display:none 它会显示 div,但显然淡入/淡出不起作用。
应用程序.js
//= require jquery
//= require jquery.turbolinks
//= require jquery_ujs
//= require_tree .
//Check to see if the window is top if not then display button
$(window).scroll(function(){
if ($(this).scrollTop() > 600) {
$(".scrollToTop").fadeIn(1000)
} else {
$(".scrollToTop").fadeOut(1000);
}
});
//Click event to scroll to top
$(".scrollToTop").click(function(){
$('html, body').animate({scrollTop : 0},500);
return false;
});
其他有效的js代码
$(window).scroll(function() {
if ($(".navbar").offset().top > 50) {
$(".navbar-fixed-top").addClass("top-nav-collapse");
$(".navbar-transparent").addClass("navbar-color");
$(".navbar-nav").addClass("navbar-nav-dark");
$(".logo_dark").show();
return $(".logo_light").hide();
} else {
$(".navbar-fixed-top").removeClass("top-nav-collapse");
$(".navbar-transparent").removeClass("navbar-color");
$(".navbar-nav").removeClass("navbar-nav-dark");
$(".logo_light").show();
return $(".logo_dark").hide();
}
});
CSS
.scrollToTop {
margin: 0;
position: fixed;
bottom: 8.5%;
right: 0;
z-index: 100;
display: none;
text-decoration: none;
color: #ffffff;
background-color: rgba(100, 193, 151, .7);
padding: 10px 20px 10px 10px;
font-size: 12px;
}
.scrollToTop:hover {
background-color: rgba(100, 193, 151, 1);
color: #ffffff;
text-decoration: none;
}
HTML
<a href="#" class="scrollToTop"><i class="fa fa-angle-up"></i> Back to top</a>
【问题讨论】:
-
似乎在工作here。有什么错误吗?你能解释一下最后发生了什么吗?
-
没有错误,div 根本不显示,就像淡入一样。
-
在
If之前添加这个console.log($(this).scrollTop()),如果scrollTop 超过600,请检查控制台。 -
你确定js代码在运行吗?你能在里面放一个警报看看吗?
-
我在页面上有其他 js 代码工作正常。我在上面添加了另一个滚动功能。这会不会有冲突?
标签: javascript jquery css ruby-on-rails ruby-on-rails-4