资讯专栏INFORMATION COLUMN

前端,不只局限于vue!

IT那活儿 / 2939人阅读
前端,不只局限于vue!

点击上方“IT那活儿”公众号,关注后了解更多内容,不管IT什么活儿,干就完了!!!

前 言

入坑项目vue有些时日了,从nodejs的安装到v格式的语法,vue监控数据进行dome回写的架构理念均有无数文章深入介绍。
实际到了应用上大家可能更多遇到的是···这个数据回写怎么没反应?那个效果状态如何实现?这个需求是不是能做出来?

更多涉及到的却涵盖各方各面,针对需求实现,以下列举一些经常被提问到的前端技术,前端可不仅仅只局限于vue!

简单动画效果如何实现

分为两种:js实现动作交互,css3实现指定动态。
何谓css3?
对于页面元素实现样式的一套规则标准。css2以及css3其实都是一样的东西。
3就是2的升级版本。性能增加,bug改进,此概念可以类推到html5,所以以后请不要再问我会不会html5了!
大哥们!html5就是html规则的一个版本、版本、版本!
css3+html5很厉害吗?
当然厉害!两套规则发布时间相隔不远,主要在于指导大厂浏览器内核开发,而前端的开发又依赖于浏览器发布出来的css、js接口。
为了适应前端越来越多样化的更迭,新版本较突出的贡献是css加入的动画,html加入画布,多媒体等元素。

css如何实现动画效果?

  • 通过@keyframes创建动画。
  • 在@keyframes里指定一个CSS样式和动画将逐步从目前的样式更改为新的样式。
  • 把@keyframes创建的动画绑定到一个选择器。
如:运行名为myfirst的动画:
div{
animation-name:myfirst; //调用myfirst定义的动画效果
animation-duration:5s;
animation-timing-function:linear;
animation-delay:2s;
animation-iteration-count:infinite;
animation-direction:alternate;
animation-play-state:running;
}
@keyframesmyfirst //定义动画效果
{
0% {background: red; left:0px; top:0px;}
25% {background: yellow; left:200px; top:0px;}
50% {background: blue; left:200px; top:200px;}
75% {background: green; left:0px; top:200px;}
100%{background: red; left:0px; top:0px;}
}

dom有哪些事件接口可以通过js进行编写

在项目需求里面会经常遇到拖移,点击等等事件的编写。
dom里有哪些事件呢?

以上是最常用的两类交互事件,在鼠标事件上一个点击事件又存在事件冒泡(内含元素绑定的事件在触发时父级元素事件也会被触发),这种情况需要使用到:

  • event.stopPropagation();   //阻止事件冒泡到DOM树上。
在vue单页面开发中,有时候也会需要对body进行事件的监听,监听方法:
mounted() {
document.body.addEventListener(click,this.functionName, false);
},
beforeDestroy() {
document.body.removeEventListener(click,this. functionName, false); //取消监听
},

在vue页面销毁之前一定需要将监听事件取消,避免污染其他页面应用,new对象同理。

html5中的可视化技术:Canvas和SVG

Canvas画布,利用JavaScript在网页绘制图像,通过.getContext("2d")来在画布中绘制图形。能够以.png和.jpg格式保存存储图像,可以说是位图。
SVG,可缩放矢量图形(ScalableVector Graphics),基于可扩展标记语言XML。
svg中的每个图形都是以DOM节点的形式插入到页面中,可以用js或其他方法直接操作,Canvas就像动画,每次显示全部的一帧的内容,想改变里面某个元素的位置或者变化需要在下一帧中全部重新显示。

通常大数据可视化项目中这两类技术应用比较常见,比如地图绘制可以通过svg,密集型图形化动画绘制可以使用Canvas。

元素在页面中的定位position

将html元素指定到页面中的固定位置这就是css中的position属性。
在应用transform样式的dom中的fixed定位,父级元素将不再指向浏览器,而是应用了transform样式的dom元素。

通过设定元素的z-index值,能强制对绝对定位的元素进行图层的排布,相当于三维中的z轴,数字越大,位置越浮于上。

定时器疯狂点击队列问题

在页面没有刷新的时候,通过setTimeout定义的定时器会一直存在,即便在dom销毁的状态下,也会一直触发定时事件,这就需要开发中一定要记得对其进行销毁动作。

  • varaction=setTimeout(function(){...},1000);   //使用变量action接收定时器名称
  • if(action)clearTimeout(action);    //判断定时器是否存在,有的话就清除
最后给大家提供一张前端的技术图谱,有兴趣的可以从头了解起!





本文作者:曾恺茜(上海新炬王翦团队)

本文来源:“IT那活儿”公众号

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129226.html

相关文章

  • 了解Webpack吗?

    摘要:你了解吗核心概念的核心概念大致分为四个入口出口插件,是一个打包模块化的工具,专注构建模块化项目。优点只更新变更内容,以节省宝贵的开发时间。在构建过程中,将引用的静态资源路径修改为上对应的路径。可以通过在启动时追加参数来实现提取公共代码。 你了解Webpack吗? 核心概念 Webpack的核心概念大致分为四个:入口、出口、loader、插件,是一个打包模块化js的工具,专注构建模块化项...

    Cympros 评论0 收藏0
  • StateOfJS: 2018年JavaScript生态圈趋势报告

    摘要:年的报告,总共有来自个不同的国家共多名开发者参与调查中国占总数的,共个开发者。今年的报告和前两年不同,取消了部分。此比率较高的国家地区显示为红色,较低的国家地区显示为蓝色调查受访者总数少于的国家地区将被省略。 前言 作为前端开发者,及时了解行业动态对我们的工作、学习方向起到至关重要的作用,毕竟知识太多,选择对的学习方向才能既省力又能紧跟技术发展潮流。近期,StateOfJS发布了刚刚过...

    wemallshop 评论0 收藏0
  • StateOfJS: 2018年JavaScript生态圈趋势报告

    摘要:年的报告,总共有来自个不同的国家共多名开发者参与调查中国占总数的,共个开发者。今年的报告和前两年不同,取消了部分。此比率较高的国家地区显示为红色,较低的国家地区显示为蓝色调查受访者总数少于的国家地区将被省略。 前言 作为前端开发者,及时了解行业动态对我们的工作、学习方向起到至关重要的作用,毕竟知识太多,选择对的学习方向才能既省力又能紧跟技术发展潮流。近期,StateOfJS发布了刚刚过...

    lsxiao 评论0 收藏0
  • [ 一起学React系列 -- 0 ] React技术栈学习路线

    摘要:的出现真可谓是前端界的福音,正与之宗旨所说,。据统计,目前世界上有的项目使用了。技术栈学习路线直到前段时间笔者的朋友给推荐了一个,真是欣喜若狂也更加坚定了自己在继续前进的想法。这是一个外国友人总结的一套技术栈学习路线,先给传送门。 我相信点进来的同学都是冲着标题来的,当然本文也不会让各位失望。不过在正式介绍标题所述的内容之前,我们不妨先放下技术,一起回顾下自己做前端技术的心路历程。 前...

    Java3y 评论0 收藏0
  • 2017前端技术总结:收获非浅,但仍需进步

    摘要:平台主要功能如下支持客户端渲染和服务端渲染微信登录鉴权页面组件增删改查,复制移动等图片上传微信文章一键复制等等动态组件的配置原理之后专门用一篇文章详细写吧持续集成这个其实也不算是项目,算是前端的工具。 2017年算是踏入真正的前端的一年,从实习到去年,说是前端的岗位,但却因为实习生的身份、公司技术不够等原因,一直停留在传统的html+css+jq,那时候感觉前端的世界在翻天覆地地变化,...

    txgcwm 评论0 收藏0

发表评论

0条评论

IT那活儿

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<