本文实例讲述了jQuery移动端跑马灯抽奖特效升级版(抽奖概率固定)实现方法。分享给大家供大家参考,具体如下: 项目描述:九宫格的跑马灯抽奖特效,抽中奖品1-9的概率分别是2%,2%,4%,1%,12%,1%,8%,70%,概率总计100%,并且每天抽奖次数最多为3次。html部分的代码和css部分的代码和上一节《jQuery移动端跑马灯抽奖特效》一样,没有修改,js部分有修改,增加了概率。 原理很简单,同样是取随机数,判断这个随机数的大小在100的...
React性能优化的一个核心点就是减少render的次数。如果你的组件没有做过特殊的处理(SCU -- shouldComponentUpdate或使用PureComponent),那每次父组件render时,子组件就会跟着一起被重新渲染。通常一个复杂的子组件都会进行一些优化,比如:SCU 使用PureComponent组件。对于SCU基本上进行的也都是浅比较,深比较的代价太高。 对于这些被优化的子组件,我们要减少一些不必要的props改变:比如事件绑定。对于那些依赖于配置项的组...
本文实例讲述了微信小程序时间轴实现方法。分享给大家供大家参考,具体如下: 最近项目需要在页面上做一个时间轴,又是第一次做,而且还是在小程序上,要知道小程序里面没有ol/ul/li,看了好几个例子,最后做出来了,开心呀!如图:做起来其实很简单:一个时间轴包括一个圆圈(css实现圆圈或者找一个圆圈图片)+一条线(css实现直线或者找一个直线的图片)+内容 来看我的代码(代码很不规范,请忽略): wxml <view class=weui-cell...
学习 Vue 的时候觉得样式绑定很简单,但是使用的时候总是容易搞晕自己。因为 :class 和 :style 里的数组语法和对象语法和 data 里绑定的值是不太一样的。这篇文章就简单对 Vue 绑定做个总结。操作元素的class列表和内联样式是数据绑定的一个常见需求,因为它们都是属性,所以可用v-bind处理,通过表达式计算出字符串结果即可。不过字符串拼接麻烦且易错。因此,在将v-bind用于class和style时,Vue做了专门增强,表达式结果类型除了...
对于使用 vue-cli 脚手架创建的前端项目,编译发布几乎是必需操作,有的编译只需要几秒钟,快如闪电,有的却需要好几分钟,慢如蜗牛。如果是线上进行热修复,那更是分秒必争,网页响应的速度直接影响了用户体验,用户不会那么有耐心长时间等着,让你慢慢编译。 网上流传 vue-cli 一些优化配置,有些在新版本的 vue-cli 和 webpack3 已经不再需要了,有些是针对 webpack4 的。对于新版本的 vue-cli 和 webpack3,以下简单配置优化后...
这里使用layui渲染的导航 实体类 dept.java private int id; //idprivate String dept_name; //部门名称private int pid; //上级部门idprivate int sort_num; //排序值private int create_id; //创建人private String create_time; //创建时间private int modify_id; //修改人private String modify_time; //最后修改时间private int is_del; // 是否删除 0 未删除 1 已删除private int status; //statusprivate String remark;...
前言 在学习 Haskell 时,我遇到了这种写法: sum (takeWhile (<10000) (filter odd (map (^2) [1..])))这段代码的意思是,找出自然整数中小于 10000 的同时是乘方数和奇数的数字,再把这些数加总。由于 Haskell 的懒运算特性,上面的程序并不会立马生成从 1 到 无限大的自然数列表,而是会等待 takeWhile 指令,再生成符合条件的列表。如果用 JS 来写,很难写出这么简洁高表达性的代码。一个可能的思路就是写个 while 循环,然后找...
最近在搞一个基于vue的后台管理系统兼容IE浏览器,眼泪都要掉下来。后来和产品说了,同意兼容IE11,感动得我眼泪啊 这里也就是记录一下我遇到的超级烦的bug 首先是babel-polyfill 和 "autoprefixer-loader" 这个不用多说,资源一大堆 然后 打包之后一直 const 去不掉,查了之后是 webpack 有 webpack-dev 不支持IE低版本了,要把 webpack 版本往下调,我是拒绝的 1、IE new Date() 失败 new Date(2018-1-1) //Mon Jan 01 2018 ...
前言 本文主要给大家介绍的是关于js实现指定日期增加指定月份的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 首先,大致思路为: 1. 先将字符串格式的时间类型转化为Date类型 2. 再将Date类型的时间增加指定月份 3. 最后将Date类型的时间在转化为字符串类型 示例代码: 1. 先将字符串格式的时间类型转化为Date类型var str = 2018-01-01 00:00:00; //字符串格式的时间类型var str1 = ...
pdf显示的方法方法一使用embed标记来使用浏览器自带的pdf工具。这种实现方式优缺点都很明显:优点:自带“打印”,“搜索”,“翻页”等功能,强大且实现方便。缺点:不同浏览器的pdf工具样式不一,且无法满足个性化需求,比如:禁止打印,下载等。方法二使用Mozilla的PDF.js,自定义展示PDF。 基础功能集成使用Text-Layers渲染(可实现pdf内容复制)什么是PDF.JSPDF.js是基于HTML5技术构建的,用于展示可移植文档格式的文件(PDF),它...
前言 本文主要介绍了关于微信小程序 JS动态修改样式的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 先写一个不怎么好看的demo,通过点击事件来控制view的元素属性,把背景改变成蓝色。是这样的效果:代码如下: 上一份小代码index.wxml<view ><view class="cont" style="background:{{background}};">属性改变</view><button bindtap="tryDriver">测试</button> </view>index.wxss.cont{height: 150...
前言 近期在写一点小东西,碰到遮罩...所以将实现的过程分享出来,供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 逻辑如下:1:第一次登陆的时候会有一个登录按钮遮罩浮层提示去授权登录2:在弹出的授权框里,拒绝授权按钮的时候,界面的数据没有办法加载出来,允许授权的时候,界面就能渲染从后端拿过来的数据3:判断是否授过权(判断是第一次登录还是第n次),如果用户第一次已经登录授权,后面继续登录的时候悬浮框就...
什么是AST 在Vue的mount过程中,template会被编译成AST语法树,AST是指抽象语法树(abstract syntax tree或者缩写为AST),或者语法树(syntax tree),是源代码的抽象语法结构的树状表现形式。 Virtual Dom Vue的一个厉害之处就是利用Virtual DOM模拟DOM对象树来优化DOM操作的一种技术或思路。Vue源码中虚拟DOM构建经历 template编译成AST语法树 -> 再转换为render函数 最终返回一个VNode(VNode就是Vue的虚拟DOM节点) 本文通过对源...
首先在最外层div添加v-if="isReloadAlive",并创建变量isReloadAlive = true 随后添加provide()以及reload方法,如下: export default {provide() {return {reload: this.reload}},data(){isReloadAlive : true},methods: {reload() {this.isReloadAlive = false;this.$nextTick(function(){this.isReloadAlive = true;})}}最后调用this.reload()即可 补充:下面看下vue解决刷新时闪烁问题 1.在vue容器的div里面加上 v-cloak <div...
本文实例讲述了JavaScript栈和队列相关操作与实现方法。分享给大家供大家参考,具体如下: 一、栈的介绍 栈就是和列表类似的一种数据结构,数据只能在栈顶添加或者删除。栈是一种特殊的列表,栈内的元素只能通过列表的一端访问,成为栈顶。栈具有后进先出的特点,所以任何不在栈顶的元素都无法访问。 后进先出(LIFO,last-in-first-out)的数据结构。 对栈的操作 1.对栈的两种主要操作为将一个元素压入栈和将一个元素弹出栈。 入栈...