带有滚动事件的Javascript集翻译速度较慢
Javascript set translate with scroll event is slow
基于滚动事件value
设置transform: translateY();
时出现问题。
基本上#moveme
将在滚动事件触发时失效。
看看这个小提琴的现场表演:https://jsfiddle.net/bo6e0wet/1/
这是代码:
HTML
<div id="moveme"></div>
JS
$(window).on("scroll", function() {
var currentScroll = $(this).scrollTop();
if (currentScroll <= 50) {
$("#moveme").css("transform", "translate3d(0," + -currentScroll + "px, 0");
}
});
moveme
为什么没有完全滞育?是因为滚动事件触发太多,所以DOM没有很快得到它吗?
我试着用触摸板慢慢滚动。它运行得很完美。
但如果我按CTRL + DOWN ARROW
,则意味着强制向下滚动到页面。moveme
卡住。
如何解决这个问题?
我的代码出了什么问题?
提前感谢。。。
更改此条件:
if (currentScroll <= 50)
比如
if (currentScroll <= 75)
因为currentScroll
从39跳到65,所以它错过了50点,只平移了-39 Fiddle;
$(window).on("scroll", function() {
var currentScroll = $(this).scrollTop();
if ($(currentScroll <= 50)) {
$("#moveme").css("transform", "translate3d(0," + -currentScroll + "px, 0");
}
});
#moveme { width: 100%; height: 50px; background: red;
position: fixed; top: 0; left:0; color: #FFF; }
#box { height: 1000px; background-color: #F1F1F1; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="moveme">
i will disappering. wait?! why there is a gap there?
i'm not totally disappeared. what's wrong here?
</div>
<div id="box"></div>
出于某种原因,这种小的调整似乎对有效
$(window).on("scroll", function() {
var currentScroll = $(this).scrollTop();
if ($(currentScroll <= 50)) {
$("#moveme").css("transform", "translate3d(0," + -currentScroll + "px, 0");
}
});
相关文章:
- 如何在javascript上使用flak-babel进行翻译
- Wacom stu-430签名捕获速度太慢
- 如何在速度模板中获取LiferayPortlet实例id
- 使用谷歌网站翻译器自动翻译网页
- jsi18n-django.catogue没有'不包含任何已翻译的字符串(但是djangojs.mo包含)
- 我想放慢html中进程栏的速度
- Django'支持Javascript文件中的翻译
- Knockout绑定大量数据的速度较慢
- 如何翻译MySQL查询's ResultSet转换为整数
- Wordpress:未捕获引用错误:未定义速度
- 原生脚本无限翻译动画
- 即使光标位于屏幕边缘,也可以跟踪鼠标速度
- Css优化谷歌页面速度洞察
- fullcalendar在删除导致浏览器挂起的多个事件时速度较慢
- 录制速度javascript
- AngularJS无法使用translate值正确翻译
- Javascript图像数组预加载速度和从内存中删除
- 谷歌地图多边形减慢浏览器速度
- nodejs/ccurlhttp请求与postlerrest客户端相比速度较慢
- 带有滚动事件的Javascript集翻译速度较慢