- 博客(31)
- 收藏
- 关注
转载 JS判断字符串小括号是否成对合法
一、思路要判断()是否成对;运用栈的“后进先出“ 的特点,定义一个空数组,作为栈;for循环遍历字符串,当遇到“(”的时候就把“(”添加到空数组最顶端,push方法,记录发现一个左括号;当遇到“)”就把数组中最顶端的元素弹出来,pop方法,抵消一个左括号。注意如果此时数组是空的,但是遇到“)”说明没有“(”缺少成对的“)”,则返回false;不是括号的字符就不用考...
2019-02-22 21:52:00
1295
转载 Less编码规范
Less 编码规范一、代码书写规范1.代码格式1.1 文件[建议]:采用 UTF-8 编码,在 CSS 代码头部顶格使用:@charset "utf-8";1.2 缩进[强制]:用两个空格来代替制表符(tab) -- 这是唯一能保证在所有环境下获得一致展现的方法。1.3 规则声明块[强制]:为了获得更准确的错误报告,每条声明都应该独占一行。[强制]:在规则声明块...
2018-08-10 17:27:00
541
转载 React九宫格抽奖
思路:一、.九宫格,8个奖项,中心1个抽奖按钮。二、转的方向是顺时针,也就是说转的顺序如图:0-1-2-3-4-5-6-7。0127奖3654三、如何排版? 1.如果flex排版: 优点:样式布局简单点; 缺点:数据和旋转的顺序不一致,可以处理数据改变数据的排序,后续获得奖...
2018-07-26 13:05:00
332
转载 n个有序数组,取出k个最大值
思路:先合并数组,在去重,然后排序,再取出k个最大的值;var arr = [ [10, 2, 3, 4, 5], [2, 3, 4, 5, 6], [5, 7, 8, 9, 11]]var allArr = [];for (var i = 0, l = arr.length; i < l; i++) { allArr =...
2018-07-22 17:42:00
922
转载 JS数组去重
去重方法很多,提供比较好用方法方法一:通过对象的属性是唯一的特点,判断是否重复Array.prototype.distinct = function(){ var arr = this; var i,obj={},result=[],l=arr.length; for (var i=0;i<l;i++){ if(!obj[...
2018-07-22 16:59:00
59
转载 JS字符串反转
最开始的思路是,先把字符串分割,然后倒序拼接成一个新的字符串。于是有了方法一:var name = "My city is WH";var nameArr = name.split('');var result=[];var resultStr = '';for (var i = 0, l = nameArr.length; i < l; i++) {...
2018-07-22 16:37:00
98
转载 React移动端scrollTop回到顶部
在没有jQuery的animate方法可使用的时候,要实现回到顶部的效果,可以通过原生JS的elment.scrollTop方法回去,但是很生硬,加上setInterval配合就可以实现细腻的滚动效果了。top = () => { const obj = document.getElementsByClassName('list-view')[0]; co...
2018-07-11 19:21:00
1044
转载 CSS媒体查询判断iphone设备
判断iphone设备兼容iphone4/4s @media (device-height:480px) and (-webkit-min-device-pixel-ratio:2){} 兼容iphone5@media (device-height:568px) and (-webkit-min-device-pixel-ratio:2){} 兼容iphone6,...
2018-06-29 19:01:00
757
转载 H5唤醒APP
Android使用iframe唤起,ios采用window.location.href唤起更合适一点。1.ios系统:在wap中唤起app其实应用最最广泛的并不是Universal Link,而是直接Schema跳转window.location.href ="taobao://fulushuka.tmall.com/shop/view_shop.htm?spm=...
2018-06-27 18:12:00
110
转载 css3 placeholder字体颜色大小
一、须知placeholder属性是css3中新增加的属性,IE9和Opera12以下版本的CSS选择器均不支持占位文本。二、设置placeholder文字颜色、字号方式1:因为每个浏览器的CSS选择器都有所差异,所以需要针对每个浏览器做单独的设定(可以在冒号前面写input和textarea)。::-webkit-input-placeholder { /* ...
2018-06-27 11:06:00
86
转载 H5 iphoneX适配方案
H5 iphoneX适配方案,原理是找到iPhone X屏幕高度,用媒体查询控制html加上头部,底部的区间,避开异性区域。less@media only screen and (device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) { /*...
2018-06-26 16:35:00
109
转载 对象序列化成字符串,拼接在请求url后面
使用场景:前端与后端接口对接的时候,假如参数对象是这样的:const params = { goodsType: 'aaa', goodsName: 'bbb', ordStatus: 0, page: 1, rows: 15};1.有的接口是将参数以键值对加=号拼接在请求url后面export fu...
2018-06-15 20:51:00
1000
转载 React 60s倒计时
constructor(props) { super(props); this.state = { tel: 13407163853, btnText: '获取验证码', timer: 60, discodeBtn: false, clearInterval: false }}...co...
2018-06-15 20:24:00
213
转载 jQuery 60s倒计时
<input id="code" type="button" value="发送验证码" /><script> var obj = $('#code'); obj.on('click', function () { var count = 6; var timer = setInterval(fu...
2018-06-15 18:26:00
84
转载 常用正则表达式
一、常用正则表达式手机号: /^1(3|4|5|7|8)\d{9}$/QQ : /^[1-9][0-9]{4,12}$/邮箱: /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/固定电话: /^(0[0-9]{2,3})-?([0-9]{7,8})$/域名: [a-zA-Z...
2018-03-07 11:33:00
440
转载 解决项目迭代css,js文件缓存问题
项目迭代过程中,新的改版,经常会出现样式不向下兼容的情况。发布线上之后,由于导致新的html文件引用了上一版本缓存css,导致样式错乱。只需在引用文件路径后,加上版本识别号参 version。不用更改原文件名。 版本可以自己定如1.0.1。<!-- css --><link rel="stylesheet" type="text/css" href="/UI...
2018-02-06 11:30:00
192
转载 移动web端禁止长按a标签,弹出“在浏览器中打开”菜单
长按press事件会导致浏览器弹出菜单:方法一:苹果禁止:-webkit-touch-callout: none;安卓的不行。禁止弹出只能用js来控制:$('a').ontouchstart = function(e) { e.preventDefault(); };方法二:将<a>标签换成其他的标签...
2018-02-02 11:26:00
339
转载 前端实现未读消息提醒小红点
原理:通过将消息是否查看的数据存写入localStorage中,点击查看后,更新localStorage的数据;文件结构:index.html -- 列表 detail -- 详情remind -- js组件调用方法:index.html说明:1.列表中红点相对定位在列表文本右上角,d为数据源,a...
2018-01-26 17:50:00
5102
转载 css常用解决方案
(1)禁止选中文本-webkit-touch-callout: none; /* iOS Safari */-webkit-user-select: none; /* Chrome/Safari/Opera */-khtml-user-select: none; /* Konqueror */-moz-user-select: none; /* Fir...
2018-01-17 17:01:00
91
转载 JS自定义加密
原理:运用^运算符,给字符串加密解密。将字符串与秘钥进行一次^运算,则加密;再进行一次^运算则解密;按位运算符异或0^1得11^1得00^0得01^0得1例如:初始字符串的Unicode编码是1010, 秘钥设置为01111010 ^ 0111 = 1101 // 加密1101 ^ 0111 = 1010 /...
2018-01-17 16:02:00
767
转载 React表单明文密文切换,携带禁止浏览器自动回填,简单验证提示功能
import React from 'react';import PropTypes from 'prop-types';import { Button, Input, message } from 'antd'; // 引入ant-designclass Demo extends React.PureComponent{ constructor(pro...
2017-09-12 17:46:00
307
转载 webapp 虚拟键盘隐藏留下空白解决办法
webapp中,input表单focus会触发虚拟键盘弹出,blur会触发虚拟键盘隐藏。但是有时会出现,blur触发了虚拟键盘隐藏,但是虚拟键盘的背景区域依然保留在原来的位置。点击body任何区域,或者在页面中 alert() 阻塞一下,灰色背景就消失了;但是点击或者alert(),都需要用户再次操作,严重影响用户体验。因此,在键盘隐藏后阻塞一下,改变可视区域可以让灰...
2017-09-06 16:13:00
265
转载 jQuery常用表单事件执行顺序
<input type="text" id="input"/> <script> // 点击测试 var input = document.getElementById("input"); $('input').hover(function(){ ...
2017-08-30 20:53:00
111
转载 localStorage+cookie实现存取表单历史记录
应用场景:1.填入表单内容有不同验证规则,提交表单会进行相应规则验证,通过验证才存;2.读取历史记录的时候,根据验证规则筛选,只读取适合相应规则的历史记录数据;3.以localStorage存储为主,如果localStorage失效(App中localStorage可能会出现失效场景),则启用cookie存取(这里用了js.cookie.js插件方便操作cookie);...
2017-08-29 17:58:00
194
转载 js.cookie.js使用方法
Cookie是网站设计者放置在客户端的小文本文件,一般后台语言使用的比较多,可以实现用户个性化的一些需求。js-cookie插件是一个JS操作cookie的插件,源文件只有3.34 KB,非常轻量级。js-cookie也支持npm和Bower安装和管理。下面看看js-cookie的具体用法。chrome本地不支持,请用firefox测试!!!1、引入js-cookie.js...
2017-08-29 16:57:00
198
转载 H5超细边框
移动端1px变粗的原因为什么移动端css里面写了1px, 实际看起来比1px粗. 其实原因很好理解:这2个’px’的含义是不一样的. 移动端html的header总会有一句<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable...
2017-08-04 19:47:00
196
转载 JS删除数组中某个元素
Array.prototype.indexOf = function(val) { for (var i = 0; i < this.length; i++) { if (this[i] == val) return i; } return -1;}; 先遍历数组中要删除的元素,然后使用得到这个元素的索引,使用j...
2017-08-04 18:48:00
90
转载 JS获取地址栏参数(支持中文)
function GetQueryString(name){ var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if(r!=null)return decode...
2017-08-04 09:49:00
491
转载 React书写规范
React项目建议一.React+ES6+Redux+ant-design+webpack二.建议加入eslint插件到编辑器中,帮助我们检查Javascript编程时的语法错误基础规范component 文件夹中,展示组件文件名,样式文件名,采用大驼峰命名,如:Login.js 、Login.lesscontainers 文件夹中,容器组件文件名,采用大驼峰...
2017-07-26 16:40:00
223
转载 React中禁止chrome填充密码表单
当 input 的 type="password" 时,chrome浏览器会以 type="password" 为标识记住输入的用户名和密码,如果chrome用户选择记住密码,chrome会把输入过的用户名、密码填充到表单中;在React中,以下2中方法都不能解决问题:1.在表单前增加2个input并隐藏<input type="text" style="dis...
2017-07-26 14:51:00
425
转载 ES6语法将扁平的JSON对象结构化
适用于支持ES6语法的项目中。Form表单提交整个Table的数据,每单个表单必须有唯一的name,当数据量较大时,不可能去手动设置每一个name名。因此通过遍历出有规律的name,然后通过Form表单提交所有数据,再去处理数据,将其转为分类的结构化数据,作为参数传给后端。const obj = { id0: 'id000', id1: 'id001',...
2017-06-24 12:07:00
302
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人