javascript - 当我使用 Javascript 向下滚动时,我可以逐像素更改元素的宽度或任何其他样式吗?

标签 javascript html css

我有一个宽度为 100px 的 div,我想在每个滚动步骤中将宽度减少 1px,这样当我向下或向上滚动页面时,div 看起来就像是动画的。所以当我向下滚动 100 步时,div 消失了。我该怎么做?

最佳答案

使用几行 jQuery 的简单解决方案。

$(window).on('scroll', function(e){
     $('#box').css("width", 100-$(window).scrollTop());    
});

http://jsfiddle.net/vwrr6Lv1/1/

编辑:

如果您需要开始制作更精美的动画,我建议您查看支持 CSS3 转换和过渡的 jQuery Transit,例如

$(window).on('scroll', function(e){
    $('#box').transition({'perspective':'100px', 'rotateY': 100-$(window).scrollTop()}, 0);    
});

http://jsfiddle.net/vwrr6Lv1/3/

jQuery Transit 是 jQuery.animate 的一个很好的扩展,它支持 CSS3 过渡和变换。 http://ricostacruz.com/jquery.transit/

关于javascript - 当我使用 Javascript 向下滚动时,我可以逐像素更改元素的宽度或任何其他样式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25970900/

相关文章:

javascript - AJAX 条件 if (xmlhttp.readyState==4 && xmlhttp.status==200)

html - 为什么 anchor 标签是蓝色的?

html - nivo slider 左箭头图片被窃听

css - 如何修复解析错误 [ :] in my css?

css - 居中图像并将另一个图像向右浮动

html - Bootstrap 专栏全部内容背景色

javascript - 该交互式网站使用什么语言/框架?

javascript - 如何从带有列表标签的对话框中的复选框绑定(bind)属性(选中),SAPui5

javascript - Firefox:函数提升错误

javascript - 如何在 D3 中为文本 div 的特定部分着色?