如何在鼠标滚轮滚动上设置剪切遮罩的动画
How to animate clipping mask on mouse wheel scroll
我创建了一个示例,它与我希望的最终结果完全一样,只是我希望它在鼠标滚动时作为页面转换而不是在鼠标悬停时发生。
(翻转图像以查看效果)参见示例:http://lgadftp.com/test_mask/
我基本上是想建立一个只有2页的网站,其中只包含全屏图像。我想用这种很酷的蒙版圆形效果在两页之间转换。当我向下滚动和向上滚动时,有什么想法可以让它为面具设置动画吗?
您可以使用svg
$(window).scroll(function () {
if ($(window).scrollTop() > 100) {
$('.seven').velocity({
r: '1000'
})
} else {
$('.seven').velocity({
r: '0'
})
}
if ($(window).scrollTop() > 300) {
$('.six').velocity({
r: '1000'
})
} else {
$('.six').velocity({
r: '0'
})
}
if ($(window).scrollTop() > 500) {
$('.five').velocity({
r: '1000'
})
} else {
$('.five').velocity({
r: '0'
})
}
if ($(window).scrollTop() > 700) {
$('.four').velocity({
r: '1000'
})
} else {
$('.four').velocity({
r: '0'
})
}
if ($(window).scrollTop() > 900) {
$('.three').velocity({
r: '1000'
})
} else {
$('.three').velocity({
r: '0'
})
}
if ($(window).scrollTop() > 1200) {
$('.two').velocity({
r: '1000'
})
} else {
$('.two').velocity({
r: '0'
})
}
if ($(window).scrollTop() > 1500) {
$('.one').velocity({
r: '1000'
})
} else {
$('.one').velocity({
r: '0'
})
}
})
div {
width:100vw;
height:400vw;
}
svg {
position:fixed;
}
circle {
transition:.5s all;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//cdn.jsdelivr.net/velocity/1.2.2/velocity.min.js"></script>
<div>
<svg width="100%" height="100%" viewbox="0 0 500 500">
<clippath id="clip">
<circle cx="200" cy="100" r="0" class="one" />
</clippath>
<clippath id="clip2">
<circle cx="200" cy="100" r="0" class="two" />
</clippath>
<clippath id="clip3">
<circle cx="200" cy="100" r="0" class="three" />
</clippath>
<clippath id="clip4">
<circle cx="200" cy="100" r="0" class="four" />
</clippath>
<clippath id="clip5">
<circle cx="200" cy="100" r="0" class="five" />
</clippath>
<clippath id="clip6">
<circle cx="200" cy="100" r="0" class="six" />
</clippath>
<clippath id="clip7">
<circle cx="200" cy="100" r="0" class="seven" />
</clippath>
<clippath id="clip8">
<circle cx="200" cy="100" r="0" />
</clippath>
<image xlink:href="http://lorempixel.com/output/sports-q-c-500-500-3.jpg" x="0" y="-100" width="500" height="500" class="one" />
<image xlink:href="http://lorempixel.com/output/sports-q-c-500-500-2.jpg" x="0" y="-100" width="500" height="500" clip-path="url(#clip7)" />
<image xlink:href="http://lorempixel.com/output/sports-q-c-500-500-1.jpg" x="0" y="-100" width="500" height="500" clip-path="url(#clip6)" />
<image xlink:href="http://lorempixel.com/output/sports-q-c-500-500-4.jpg" x="0" y="-100" width="500" height="500" clip-path="url(#clip5)" />
<image xlink:href="http://lorempixel.com/output/sports-q-c-500-500-5.jpg" x="0" y="-100" width="500" height="500" clip-path="url(#clip4)" />
<image xlink:href="http://lorempixel.com/output/sports-q-c-500-500-6.jpg" x="0" y="-100" width="500" height="500" clip-path="url(#clip3)" />
<image xlink:href="http://lorempixel.com/output/sports-q-c-500-500-7.jpg" x="0" y="-100" width="500" height="500" clip-path="url(#clip2)" />
<image xlink:href="http://lorempixel.com/output/sports-q-c-500-500-8.jpg" x="0" y="-100" width="500" height="500" clip-path="url(#clip)" />
相关文章:
- 如何设置html元素填充的动画
- 使用数据上的角度更改设置集合的第一个元素的动画
- 设置动画时,SVG/Raphael大圆圈会变形
- 在Jquery倒计时计时器上设置每个数字的动画
- 使用javascript可以设置css动画的当前百分比
- jQuery animate()函数没有't设置动画
- 如何设置自定义垂直滑块Jquery的动画
- 如何平滑地设置twitter引导程序进度条的动画
- 在EaselJS中设置精灵表动画时出现问题
- 对象获胜'如果qml中的其他地方定义了数字动画属性,则t设置动画
- 如何将高度动画设置为自动
- 替换后将动画设置为高度0
- 为什么动画设置加载在TweenMax中的两个单独的对象文字中
- 取消请求动画设置时间后的帧
- 在动画设置超时后执行函数
- 为什么Raphael.js的动画设置到不正确的坐标
- 如果动画设置为false,则Chart.js不会在Android Webview上显示
- 动画设置为浅黄色,然后返回白色?jQUery
- 三个js拼贴画动画设置时间
- 如何使用谷歌图表动画设置数值的动画?特别是Gauage