如何编辑一个jQuery动画,使其出现在元素的中间
How do I edit a jQuery animation to appear in the middle of an element?
我使用这个代码从JS提琴创建一个网页上的元素淡出动画。现在,一旦整个元素在窗口中可见,元素就会淡入。有没有办法编辑这个,这样我就可以更快地触发淡出动画?理想情况下,淡出动画应该在只有一半元素可见而不是整个元素可见时触发。
下面是触发这个动画的JavaScript代码:/* every time the window is scrolled ... */
$(window).scroll( function(){
/* check the location of each desired element */
$('.fade-in').each( function(i){
var bottom_of_object = $(this).offset().top + $(this).outerHeight();
var bottom_of_window = $(window).scrollTop() + $(window).height();
/* if the object is completely visible in the window, fade it in */
if( bottom_of_window > bottom_of_object ){
$(this).animate({'opacity':'1'},600);
}
});
});
});
将bottom_of_object
的值修改为低于原始高度的值
var bottom_of_object = $(this).offset().top + $(this).outerHeight() / 3; //we dived by 3 here at the end.
尝试在if部分或计算中减半你的bottom_of_objekt
/* every time the window is scrolled ... */
$(window).scroll( function(){
/* check the location of each desired element */
$('.fade-in').each( function(i){
var bottom_of_object = $(this).offset().top + $(this).outerHeight();
var bottom_of_window = $(window).scrollTop() + $(window).height();
/* if the object is completely visible in the window, fade it in */
if( bottom_of_window > (bottom_of_object / 2) ){
$(this).animate({'opacity':'1'},600);
}
});
});
});
相关文章:
- 仅当具有相同类的元素的中间使用 jQuery 航点到达视口时,才淡入具有相同类的元素
- D3.js:enter(),update,exit(),中间有组元素
- 如何调整jQuery动画以使元素保持在中间
- 在关联阵列的中间拼接一个元素
- 我怎样才能把元素放在垂直排列的中间
- 到达(窗口)上的中间元素.滚动
- jQuery-将元素滚动到屏幕中间,而不是使用锚链接滚动到顶部
- DIV 中的 CSS 中心中间元素,用于多种屏幕尺寸
- 为什么在DOM中插入中间非标准元素会破坏flex框
- JQuery将一个元素设置在另一个元素的中间
- 合并两个段落并删除中间的一个元素
- 在切换按钮中间找到元素[Upvote/Downvote/unvote like SO]
- 如何查找html元素是否应用了换行,并且该单词在文本中间断开
- 用jQuery从中间到顶部动画多个元素
- React -从列表中间删除最后一个元素
- 如何重新排列页面中间两个元素的制表符顺序?
- 为什么在包含100个元素的数组中搜索中间元素要比在包含10个元素的数组中搜索快?
- 使HTML表格的高度等于中间TD元素的高度
- 如何编辑一个jQuery动画,使其出现在元素的中间
- Javascript:在屏幕中间显示元素dons'不要在固定的岗位上工作