首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

常见网页特效案例

案例:网页轮播图 轮播图也称为焦点图,是网页中比较常见网页特效。 功能需求: 1.鼠标经过轮播图模块,左右按钮显示,离开隐藏左右按钮。...小圆圈排他思想 我们可以直接在生成小圆圈同时直接绑定点击事件 li.addEventListener('click', function() { // 干掉所有人...点击小圆圈,移动图片 当然移动是 ul // ul 移动距离 小圆圈索引号 乘以 图片宽度 注意是负值 // 当我们点击了某个小li 就拿到当前小...li 索引号 var index = this.getAttribute('index'); // 当我们点击了某个小li 就要把这个li 索引号给...案例:返回顶部 带有动画返回顶部 此时可以继续使用我们封装动画函数 只需要把所有的left 相关值改为 跟 页面垂直滚动距离相关就可以了 页面滚动了多少,可以通过 window.pageYOffset

2.2K40

网页特效】丝滑 macOS Dock效果

今期我们又来做一些花里胡哨特效,就是模仿 macOS Dock 这个图标放大效果: ? 01.gif 如果是单纯逐个图标放大,其实就没什么难度。...不过我们作风是,要做就做得够细致,当游标在同一个图标上左右移动时,都会影响到左边和右边图标大小,达到一个很连贯效果,这个就是今次难度所在。 好了,那我们就开始吧。...然后加入一些 padding,左右设定为 0.5rem,cursor 游标的样式设定为 default 即是预设箭头。 ? 04.png 好了,样式部分都差不多了,接下来就是实现特效部分。...然后运用相同逻辑设定右边元素放大比率,不同是,这里 offset 直接使用就可以了,而对于当前图标呢,就直接设定为 1 + scale 就是最大值了。 ?...10.gif 在游标移动过程当中,会将超出范围 li --scale 重置为 1,以及在游标离开 Dock 时候,所有 li --scale 都重置为 1。

1.5K20

JavaScript之移动端网页特效(1)

学习目标: 触屏事件概述: 移动端浏览器兼容性较好,我们不需要考虑以前JS兼容性问题,可以放心使用原生JS书写效果,但是移动端也有自己独特地方,比如触屏事件touch(也称触摸事件),Android...)状态变化事件.这类事件用于描述一个或多个触点,使开发者可以检测触点移动,触点增加和减少,比如多少个手指在点击....targetTouches 我们用targetTouches包含着一个数组,里面包含是每根手指各种属性和信息,targetTouches[0]可以看到第一个手指一些属性: 网页拖动元素我们已经学会了...接下来做移动端轮播图案例: 先搭建结构,虽然用是以前携程案例,但我还是单独在页面中写吧,不然很麻烦....接下来就是手指滑动轮播图部分: 移动也做好了,但是我们平常手机里轮播图滑动效果并不是这样,而是当我们滑动很小距离时,图片会回弹回去,滑动距离大了才会下一张,所以我们要根据moveX

2.5K20

终于在 JS 中用上 WeakMap 了!

这样,每个页面加载时都会有一个固定扩展高度值来进行动画移动,并且不会再因为快速点击而引起这样怪异现象。 几个选择 很快我想到了几个可能解决方案。...首先,将这个值存储在目标元素属性中:这本来是可以实现,但是不太优雅,当我们审查页面元素时,不希望看到一堆乱七八糟属性,特别是其他库可能也需要他们自己属性,累加起来这些标签属性可能会变得非常负载...所以一个单独 window.seCache 变量不能满足我们需求。我们需要是拥有某种键值对对象。我可以在其中存储对每个元素引用和相应扩展高度值。...WeakMap 和 Map 主要区别就是:WeakMap 键名所引用对象是弱引用。 弱引用:在计算机程序设计中,弱引用与强引用相对,是指不能确保其引用对象不会被垃圾回收器回收引用。...你点赞、在看和关注是对我最大支持! 点赞、在看是最作者最大支持 ❤️

82120

让你在WebView中用JS调Native Object

所以简单来说我要做事情就是要实现一个bridge,用于两方之间通信,使其在web中能够像调用一个普通JS一样去调用OC。...ViewController就相当于是本地对象在JS中存一个key。通过UIWebView执行JS,向JS中创建了一个名为ViewController对象,它拥有一系列本地拥有的方法。...JS中对应对象中就完成了注入。...异步调用: 说实话我觉得这部分做挺丑,我是通过JS调用时候,把一个callback作为最后一个参数来进行。...在做这点时候有点取巧,其实我根本就没有把function传到本地来,它始终是存在于JS,只是相当于把这个callback名字告诉给了OC这边,然后本地完成了工作之后,只需要告诉JS我需要哪个callback

2.4K30
领券