首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

滚动视差让你不相信“眼见为实”

引言 视差滚动(Parallax Scrolling)是指让多层背景以不同的速度移动,形成立体的运动效果。 其实,这项技术早在 2013 年就已经开始一些国外的网站中得到了大量的应用。...我是最近的项目中用到了这块,觉得有必要整理一下。本文主要是简单的介绍一下什么是视差滚动,实现方式以及如何在现有框架(vue/react)中使用视差滚动。 什么是视差滚动?...说的简单点就是,滚动屏幕,网页中元素的位置会发生变化。但是不同的元素位置变化的速度不同,导致网页中产生分层元素的错觉。 看完上面这段,相信你对视差滚动的概念已经有了一个初步的了解。...3D Z 轴方向距离屏幕的距离也就不一样; 3、滚动滚动条,由于子元素设置了不同的transform: translateZ(),那么他们滚动的上下距离translateY相对屏幕(我们的眼睛),也是不一样的...,下面让我们看下如何在现有框架(vue/react)中来应用滚动视差。

2K76

分享5个关于 Vue 的小知识,希望对你有所帮助(三)

然后我们调用el.scrollIntoView,并使用一个具有behavior属性的对象来更改滚动行为。 2、如何在Vue.js组件中监听窗口滚动事件?...3、如何在页面加载时调用Vue.js方法? 我们可以页面加载通过 beforeMount 组件钩子中调用Vue.js方法来调用它。...4、Vue.js中按下回车键执行某些操作 我们可以通过执行某些操作的元素添加 v-on:keyup 指令来在按下回车键执行某些操作。...5、如何在应用程序中为移动浏览器显示不同的内容? 有时候,我们希望Vue.js应用中为移动浏览器展示不同的内容。...我们可以通过检查浏览器的用户代理来确定浏览器是否为移动浏览器,并相应地显示内容,Vue.js应用程序中为移动浏览器显示不同的内容。

17720
您找到你想要的搜索结果了吗?
是的
没有找到

开发 | 餐饮小程序必备!教你轻松做出像「饿了么」一样的点餐界面

如何将分类栏固定在屏幕呢?使用 sitcky 特性,或许是个方案。 今天,知晓程序就来为大家讲解,如何在小程序中使用 sticky 的方法,将页面元素固定在屏幕。...简单地说,sticky 就是标题栏的「粘粘」效果,向下滑动跟着列表走、向上滑动到顶部将会固定在顶部。 ?...顶部的蓝色条幅,就是 sticky 后的效果 如果不考虑不同浏览器兼容性,CSS 3 就有一个 position: sticky 属性,就能实现这种效果。 ?...众所周知,小程序不能使用 DOM 操作页面,也没法使用 jQuery 的 $ 对象,快捷获取 scrollTop,还不能像 vue 一样,直接操作 $el。...wepy 的本意是希望小程序能像 vue 一样开发,由于本人一直在用vue做项目,所以用 wepy 开发小程序会顺手一些。 但是 wepy 虽然尽力贴合 vue,但在某些设计存在着一定的问题。

91440

📚一站式解决:H5开发全攻略,看这篇让你省时又省力

webkit-tap-highlight-color: transparent; } ⭐️⭐️禁止动画闪屏 通过使用perspective、backface-visibility和transform-style属性,可以解决移动设备动画闪屏的问题... Vue 项目中,可以直接使用 vue-sticky 组件。...单页应用在 iOS 微信分享失效,图片,标题和描述均未正常显示,安卓分享正常 原因 我们一般 APP.vue 的 mounted 生命周期中初始化微信 SDK,此时页面的地址 hash 是#/,...而首页的 hash 是#/home,导致初始化微信 SDK 传入的分享 url 和用户实际触发分享操作页面的 url 不一致,致使 iOS 分享失败。...解锁滚动,从 document 移除对触摸事件的监听器,恢复默认的滑动行为。

36820

CSS | 视差滚动 | 笔记

(200-transformZ的值)就是视点和xy平面的距离(初始是屏幕的位置,此时transformZ的值为0)。 perspective属性用在容器,容器内每个元素的表现形式会不一样。...视差滚动中,"向内移动"和"向外移动"是相对于观察者(即浏览器窗口)的视角来说的。 当一个层的 translateZ 值为负,它会向内移动,也就是朝向观察者的方向。...结果是,当地址栏可见屏幕的底部部分将被切断,从而破坏了100vh的初衷。 如下所示: 当地址栏可见,由于移动浏览器不正确地将100vh设置为屏幕高度而没有显示地址栏, 因此屏幕底部被切断。...在上图中,应该在屏幕底部的按钮被隐藏了。 更糟糕的是,当用户第一次使用手机访问网站,地址栏会显示页面顶部, 因此用户体验是很糟糕的。... vue 项目中使用 ${app}/src/App.vue export default { name: 'App', mounted() { // First we

54421

第134天:移动web开发的一些总结(二)

自定义tao事件原理: touchstart、touchend的记录时间、手指位置,touchend进行比较,如果手指位置为同一位置(或允许移动一个非常小的位移值)且时间间隔较短(一般认为是200ms...touchstart:手指触摸屏幕触发(已经有手指放屏幕不会出发) touchmove:手指在屏幕滑动,连续触发 touchend:手指离开屏幕触发 touchcancel:系统取消touch时候触发...(不常用)eg:滑动页面来了一个电话或者其他系统事件 除常见的事件属性外,触摸事件包含专有的触摸属性: touches:跟踪触摸操作的touch对象数组 targetTouches:特定事件目标的touch...但注意:event.preventDefault()会导致默认行为不发生,scroll,导致页面不滚动!如果页面带有滚动条,就需要考虑更换解决方案。...当一个css3动画结束,我们可以监听相关事件AnimationEnd,比如对于webkit来说,是webkitAnimationEnd。

1.7K10

Native和H5分久必合,Weex会带来移动端的巨变吗?

Native和H5的分久必合 移动端崛起的大背景下,移动端的开发技术又是如何演进的呢? • 2007年,Apple 发布了 iPhone 手机和iOS 操作系统,是轰动一的新闻。...它传达了这样的想法:移动端崛起的大环境下,移动端人机交互体验(触屏)和物理条件(屏幕尺寸)的巨变下,应该考虑将业务核心关注点(因为屏幕小)优先(因为移动端崛起)移动端上实现。...• 2015年,也称为动态化框架元年,从年初的NativeScript、ReactNative 到年底阿里的Weex,它们都使用HTML/JS/CSS写页面,渲染出Native UI,开发效率和用户体验吸收了...一个是滚动的流畅性,技术指标上表现为帧率;另一个是所谓的“黏手感”差,也就是屏幕响应手指操作的变化速度较慢。 • H5大区块的动画流畅性差,典型Banner和侧边栏等组件。...(4) DSL(领域语言) · JS Framework,Weex 最初的 DSL 基于 Vue.js 1.0 语法子集;目前社区中推进基于 Vue.js 2.0 的版本。

1.8K00

新闻推荐实战 (六) : 前端基础及Vue实战

是建立 Internet 的一种网络服务,为浏览者 Internet 查找和浏览信息提供了图形化的、易于访问的直观界面,其中的文档及超级链接将 Internet 的信息节点组织成一个互为关联的网状结构...CSS 以 HTML 为基础,提供了丰富的功能,字体、颜色、背景的控制及整体排版等,而且还可以针对不同的浏览器设置不同的样式。...{{ }} :输出对象属性和函数返回值。 当一个 Vue 实例被创建,它向 Vue 的响应式系统中加入了其 data 对象中能找到的所有的属性。...移动网络和移动设备的快速发展,使得 H5 移动设备能够被更好的应用。...H5 页面有以下特点: 具有移动端自适应能力,H5 页面会根据不同的手机屏幕尺寸进行适配,以达到不同屏幕的最佳显示效果 支持多媒体功能,支持背景音乐,视频播放等多种多媒体功能 页面素材预加载,为了保证整个页面的播放流畅

2.2K20

前端面试题

5、websocket异常断链如何处理 异常断链的处理方式 6、项目开发流程 详细流程 7、如何解决移动屏幕适配 使用rem布局 使用媒体查询 使用响应式框架 8、常用的VUE插件 Axios(官方推荐的...而Session存储服务器,对客户端是透明的。...: scroll或auto;iOS滑动卡顿的问题 -webkit-overflow-scrolling: touch; 12、移动端click300ms延时响应 使用Fastclick,: window.addEventListener...指的就是我们css中设置的像素。 8、阿里的flexible使用 flexible的作用是使页面可以适配不同移动终端。...只能操作对象栈内存中的引用地址。 24、什么是赋值什么是深拷贝什么是浅拷贝 赋值:当我们把一个对象赋值给一个新的变量,赋的其实是该对象栈中的地址,而不是堆中的数据。

1.2K20

从零开始学 Web 系列教程

之 HTML(一)认识前端 什么是前端 网页组成 Web 标准 浏览器内核 认识 HTML HTML 结构标准 标签分类 开发工具 从零开始学Web之HTML(二)标签、超链接、特殊符号、列表、音乐、滚动...、head等 标签 超链接 特殊字符 列表 音乐标签 滚动标签 head里面相关 从零开始学 Web 之 HTML(三)表单 表格 表单 标签语义化 从零开始学 Web 之 CSS 从零开始学 Web...Web 之 CSS3(七)多列布局,伸缩布局 从零开始学 Web 之 CSS3(八)CSS3三个案例 从零开始学 Web 之 移动Web 从零开始学 Web 之 移动Web(一)屏幕相关基本知识,调试...,视口,屏幕适配 从零开始学 Web 之 移动Web(二)JD移动端网页,移动触屏事件 从零开始学 Web 之 移动Web(三)Zepto 从零开始学 Web 之 移动Web(四)实现JD分类页面 从零开始学...(三)Vue实例的生命周期 从零开始学 Web 之 Vue.js(四)Vue的Ajax请求和跨域 从零开始学 Web 之 Vue.js(五)Vue的动画 从零开始学 Web 之 Vue.js(六)Vue

4.7K50

移动端H5多页开发拍门砖经验

移动端自适应布局 项目中移动端最常用的自适应布局方案就是flexbox结合rem。...如图: [shili] 左图的表单高度单位由于下边空距较大,使用px不同屏幕显示更加;而右边的活动注册页由于不能出现滚动条,所有的众向高度、margin、padding都应该使用rem。...这时候就要做出取舍,我对主体区域采用绝对定位,这样上面间隙虽然小,不过仍能保持一个屏幕高度显示。若采用margin padding设置,必然已出现滚动条。...比如上图有三种登陆方式,使用vue布局,有两种方案。...中定义了一个loginWays,初始为空数组,接着methods中定义一个请求接口的函数,里面就是基于返回数据的基础为上面fields对象注入一个input字段用于绑定,这就是所谓的基于接口返回数据的属性注入

1.1K30

干货|HTML5 项目如何转小程序运行

今天来给大家分享的办法:集成了 FinClip SDK 的 App 中运行小程序,那这里我们就需要关注以下两个注意事项: Web 项目是适合在手机等移动设备中运行的,屏幕已经兼容; H5 项目的代码是前后端分离的.../uni-preset-vue,拉取失败出现如下图所示的错误。...所以不改也行) 不同端的浏览器兼容性仍然存在,避免使用太新的 css 语法,否则发布为 App ,Android 低端机(Android 4.4、5.x),会有样式错误。...通过以上步骤,基本就能够把已有的 vue 项目转为对应的小程序代码规范了。...第三步:将小程序移动至 FinClip 中 完成以上工作任务后,我们应该在 uni-app 中已经得到了一个结构完整且可以运行的非 H5 项目了。

2.1K20

Vue项目迁移小程序,实操干货分享

首先明确需求:开发者是想将已有的 Vue 项目转为小程序,集成了 FinClip SDK 的 App 中运行小程序,那这里我们就需要关注以下两个注意事项: Web 项目是适合在手机等移动设备中运行的,...屏幕已经兼容; H5 项目的代码是前后端分离的; 本篇文章中,我们选择使用了一款成熟的跨平台框架 uni-app 来处理这个问题。.../uni-preset-vue,拉取失败出现如下图所示的错误。...通过以上步骤,基本就能够把已有的 vue 项目转为对应的小程序代码规范了。...第三步:将小程序移动至 FinClip 中 完成以上工作任务后,我们应该在 uni-app 中已经得到了一个结构完整且可以运行的非 H5 项目了。

66830

Window对象

frameElement: 返回嵌入当前window对象的元素,或,如果当前window对象已经是顶层窗口,则返回null。...getComputedStyle(): 获取指定元素的CSS样式。 matchMedia(): 返回指定的媒体查询字符串解析后的结果对象。 moveBy(): 根据指定的值,移动open创建的窗口。...oncontextmenu: 点击鼠标右键打开上下文菜单触发。 onmousedown: 鼠标按钮被按下触发。 onmousemove: 当移动鼠标触发。...onmouseout: 鼠标移出窗口触发。 onmouseover: 鼠标移动到窗口触发。 onauxclick: 指示输入设备按下非主按钮触发,例如鼠标中键。...打印相关 onbeforeprint: 该事件页面即将开始打印触发 onafterprint: 该事件页面已经开始打印或者打印窗口已经关闭触发。

2.4K20

Vue.js高仿饿了么外卖App学习记录

设备像素比devicePixelRatio 移动端,devicePixelRatio指的是window.devicePixelRatio。 移动端设备分为非视网膜屏幕和视网膜屏幕。..." href="static/css/reset.css"> meta name="viewport" 它是移动端浏览器一个比屏幕更宽的虚拟窗口中渲染页面...移动设备,初始视口通常就是应用程序可以使用的屏幕部分。 viewport中就是浏览器用来显示网页的那部分区域。...不过从iphone4开始,推出了retina屏幕,物理像素变成640*960,屏幕尺寸没有变化,单位面积的物理像素的数量增加了,则表示屏幕密度增加了。...像素单位有设备像素,逻辑像素,css像素。 设备像素也叫物理像素。 什么是设备像素,它指的是显示器的真实像素,每个像素的大小是屏幕固有的属性。

2.3K11

前端基础理论试题——附答案

它们都表示空值CSS中,选择器 .class 是用来选择什么?A. 标签B. IDC. 类别D. 子元素响应式Web设计中,什么是“移动优先”策略?A. 首先设计桌面版本,然后适应移动端B....控制项目主轴的对齐方式C. null表示空,undefined表示未定义C. 类别B. 首先设计移动端版本,然后适应桌面端C. BowerC. A....响应式Web设计解释: 响应式Web设计是一种设计和开发网站的方法,使其能够不同设备和屏幕尺寸提供一致的用户体验。...媒体查询: 使用CSS媒体查询根据设备特性(屏幕宽度、设备类型)应用不同的样式。这使得可以根据屏幕尺寸调整字体大小、布局等。...弹性图片: 使用max-width: 100%的CSS样式,确保图片在小屏幕不会超出其容器。

17410

Vue.js开发移动端经验总结

user-scale=no禁止缩放 所以现在我们知道,这段移动端常见的代码的意思,即将visualviewport和layoutviewport设置为idealviewport的值;这样我们移动端就不会出现滚动条...它的作用是:position:fixed的元素将相对于屏幕视口(viewport)的位置来指定其位置。并且元素的位置屏幕滚动不会改变。...iOS弹出键盘;软键盘唤起后,页面的 fixed元素将失效(iOS认为用户更希望的是元素随着滚动移动,也就是变成了 absolute定位),既然变成了absolute,所以当页面超过一屏且滚动,失效的...堆叠上下文(Stacking Context):堆叠上下文是 HTML 元素的三维概念,这些 HTML 元素一条假想的相对于面向(电脑屏幕的)视窗或者网页的用户的z 轴延伸,HTML元素依据其自身属性按照优先级顺序占用层叠上下文的空间...常用插件 better-scroll是一个为移动端各种滚动场景提供丝滑的滚动效果的插件,如果在vue中使用可以参考作者的文章当 better-scroll 遇见 Vue

4.2K10

原生 JS 手写一个优雅的图片预览功能,带你吃透背后原理

指针 是输入设备的硬件层抽象(比如鼠标,触摸笔,或触摸屏的一个触摸点),它能指向一个具体表面(屏幕的一个(或一组)坐标,可以表示包括接触点的位置,引发事件的设备类型,接触表面受到的压力等。...移动图片的实现是比较简单的,每次指针按下我们记录 clientX、clientY 为初始值,移动时计算当前的值与初始点位的差值加到 translate 偏移量中即可。...虽然浏览器滚动对应的其实是 scroll 事件,但我们PC滚动通常都是用利用滚轮(笔记本触控板也被视作滚轮),所以滚轮事件中阻止系统默认事件也就阻止了滚动,但不是完全阻止,因为滚动条没隐藏的话还是可以拖动来滚动页面的...,本文例子中并没有针对滚动做什么处理,如果需要完全禁止滚动,应该在打开弹窗为 body 设置 overflow 为 'hidden'。...该属性平时的业务代码中也可用于优化移动端性能、解决 touchmove 的 passive 报错等,这个我之前另一篇文章中有提到,感兴趣可以看看:一行CSS提升页面滚动性能。

2.4K71
领券