![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js_笔记
Hao.Zhou
我不懒,但我什么都没有写
展开
-
js判断一个dom中是否包含另一个dom的方法
【代码】js判断一个dom中是否包含另一个dom的方法。原创 2023-03-15 16:46:07 · 174 阅读 · 0 评论 -
关于移动端适配方案--rem
; (function () { function w() { var r = document.documentElement; var a = r.getBoundingClientRect().width; if (a > 750) { a = 750; } rem = a ...原创 2019-11-07 13:10:18 · 100 阅读 · 0 评论 -
js中常用的数学方法-用于测试形状与形状是否相交
以下代码均为 CocosCreator[www.cocos.com/docs/](游戏引擎)源码,一般都是效率极高且语意清晰的工具函数。我只是个代码的搬运工,并且写了一点点注释。转载 2023-02-01 15:03:45 · 618 阅读 · 0 评论 -
js求两个不规则多边形之间的最短路径长度并画出该线段(点到一个直线的最短距离)
【代码】js求两个不规则多边形之间的最短路径长度并画出该线段(点到一个直线的最短距离)原创 2023-02-02 00:00:00 · 262 阅读 · 0 评论 -
不刷新页面,更改页面的url地址( history.pushState)
history.pushState() 方法向当前浏览器会话的历史堆栈中添加一个状态(state)。原创 2022-11-24 17:58:53 · 725 阅读 · 0 评论 -
弧度转角度
【代码】弧度转角度。原创 2022-09-01 17:33:06 · 88 阅读 · 0 评论 -
[html|angular]根据图片大小自适应居中留白
代码】[html|angular]根据图片大小自适应居中留白。原创 2022-08-03 17:13:00 · 205 阅读 · 0 评论 -
js删除字符串空格
js 去除空格正则原创 2022-06-27 11:56:54 · 182 阅读 · 0 评论 -
js通过调用API判断网络连接状态
js通过API判断网络连接状态原创 2022-06-10 16:59:59 · 329 阅读 · 1 评论 -
全屏/退出全屏/监听全屏或退出全屏状态(jquery/原生js/快捷方式)
function exitFullScreen() { $('#data_screen').data('open', false); $('#data_screen .item_title').text('全屏') }; function enterFullScreen() { initCont(); $('#data_screen').data('open', true); $('#data_sc...原创 2022-01-27 10:29:39 · 2526 阅读 · 0 评论 -
原生js实现图片/PDF导入(PDF导入需后端处理)
public onUpload(): void { const fileInput = document.createElement('input'); fileInput.type = 'file'; fileInput.accept = 'image/gif,image/jpeg,image/jpg,image/png,image/svg,.svg,application/pdf'; let file: File = null; const rea..原创 2021-10-20 14:30:00 · 913 阅读 · 1 评论 -
react hooks useEffect 执行两次解决方案
useEffect(() => { const timeout = setTimeout(() => verifyIsLogin(), 300); return () => clearTimeout(timeout); async function verifyIsLogin() { }; // verifyIsLogin(); }, []);原创 2021-06-21 16:45:13 · 8689 阅读 · 0 评论 -
正则验证密码(8-20位字母、数字或字符,至少包含两种)
var reg = /(?!\d+$)(?!^[a-zA-Z]+$)(?!^[_#@]+$).{8,30}/; if(!reg.test(pw1)){ $("#resetPwTips").html("密码必须是8-20位字母、数字或字符,至少包含两种!").fadeIn(); $('#resetPw-btn').text('确认修改').removeAttr("disabled"); re原创 2021-04-08 17:53:09 · 9988 阅读 · 0 评论 -
手机号正则验证(2021)
var reg =/^(((13[0-9]{1})|(14[0-9]{1})|(15[0-9]{1})|(16[0-9]{1})|(17[0-9]{1})|(19[0-9]{1})|(18[0-9]{1}))+\d{8})$/; if (!reg.test(phone)) { this.setState({ err: "请输入正确的手机号!" }) .原创 2021-04-07 18:10:11 · 3178 阅读 · 2 评论 -
同时包含字母和数字的正则表达式(8位字符串验证,必须同时包含字符和数字,可用于密码验证)
let validationStr =/^(?=.*[0-9])(?=.*[a-zA-Z])(.{8,})$/; if (!validationStr.test(passWord)) { this.setState({ err: "密码为字母+数字组合且不能小于8位!" }) return; }...原创 2021-04-07 18:03:19 · 3840 阅读 · 1 评论 -
Ant Upload 实现自定义上传(点保存之后再上传)
function getBase64(file: any) { return new Promise((resolve, reject) => { const reader = new FileReader(); reader.readAsDataURL(file); reader.onload = () => resolve(reader.result); reader.onerror = error => rej.原创 2021-03-03 16:21:22 · 771 阅读 · 1 评论 -
js从数组对象中查找出全符合一个对象的对象
let price = null; goodsData.spec_data && goodsData.spec_data.some(item => { for (const key in specData) { if (Object.hasOwnProperty.call(specData, key)) { if (specData[key] !== item[key]) { return; ...原创 2021-02-20 16:38:29 · 3123 阅读 · 1 评论 -
window.print()设置打印的样式是横向还是纵向(通过js控制@page实现)
业务思路使用css的@page设置@page { size: portrait; } //纵向@page { size: landscape; } //横向业务实现 var cssPagedMedia = (function () { var style = document.createElement('style'); document.head.appendChild(style); return function原创 2020-12-24 11:34:51 · 4329 阅读 · 0 评论 -
iframe onClick事件不起作用
<div style={{position:'relative'}}> <iframe style={{ width: '-webkit-fill-available', height: '-webkit-fill-available' ..原创 2020-12-16 15:27:40 · 1649 阅读 · 0 评论 -
基于excel.js 面向对象实现Excel的生成以及导出(完整表格·带图片)
效果如下excel.js(生成Excel的json文件)import ERPUtil from "./erpUtil";const Excel = require('exceljs');export class ERPExcelCell { row = null; key = null; block = null; excelCell = null; beMerged = false; value = null; // excel原创 2020-11-26 15:57:10 · 1147 阅读 · 1 评论 -
js不刷新页面改变路由参数
let markKey = new URLSearchParams(this.props.location.search) let target = markKey.get('current'); if (target) { markKey.set('current', current) } else { markKey.append('current', current) } th...原创 2020-11-26 15:34:27 · 1678 阅读 · 1 评论 -
react利用exceljs实现table表格的导出(带图片,样式)
比较难看的代码,主要是为了实现带图片,带样式的table导出,希望哪位大佬有其他方法可以私信我//引入exceljsconst Excel = require('exceljs'); // 导出excel downloadExcel = () => { let dataLength = 0; this.state.dataItems.forEach(floor => { floor.rooms.forEach(room =&.原创 2020-10-23 17:48:45 · 2991 阅读 · 0 评论 -
Ant Design Select组件下拉选项随页面滚动与Select框分离问题
<SelectP showSearch style={{ width: '100%' }} placeholder="单击进行搜索选择" defaultValue={value} optionFilterProp="children" getPopupContainer={(triggerNode)=>{ return triggerNode.parentNode}}///增加这个定位去解决 onFocus={this.ext原创 2020-06-29 14:50:21 · 946 阅读 · 0 评论 -
Echarts(react)实现中国地图的引入以及使用
事实上,只需要将Echarts官网提供的series[ { mapType: ‘china’} ]就可以简单实现import React from "react";import EChartBase from "./EChartBase";import echarts from 'echarts/lib/echarts';import 'echarts/map/js/china';import geoJson from 'echarts/map/json/china.json';class原创 2020-06-04 15:02:31 · 5254 阅读 · 1 评论 -
Ant design tree defaultExpandAll={true} 不生效问题
如果是同步数据,设置defaultExpandAll={true}是可以生效的,但是如果是异步从后台获取的动态数据,展开会遇见不生效的情况,解决办法是加一句判断逻辑,页面数据获取到之后再渲染tree{ treeData.length > 0 && <Tree defaultExpandAll = {true} >}...转载 2020-04-29 14:54:11 · 6450 阅读 · 2 评论 -
简单实现将两个一维数组转换为二维数组
将两个一维数组转换为二维数组 let values=[1,2,3], let dates=[a,b,c] values = dates.map((key,value)=>[key,values[value]]); console.log(values)原创 2020-04-27 15:44:15 · 3997 阅读 · 0 评论 -
前端简单实现在线预览pdf、word、xls、ppt等文件
目前免费纯前端方式实现在线预览word、excel、ppt最优选择微软在线预览,但不可编辑。还有一种方案就是利用后端将文件转为图片,前端以图片形式预览。<a target="_blank" href={'https://view.officeapps.live.com/op/view.aspx?src=' + url}> {name}</a>用法:打开页面https...原创 2020-04-26 17:24:05 · 3230 阅读 · 0 评论 -
react下数据请求后swiper不能滑动的问题
import React, { Component } from 'react';import CSS from './index.module.less';import Swiper from 'swiper';class MenuBar extends Component { constructor(props) { super(props); ...原创 2020-02-25 13:31:57 · 778 阅读 · 0 评论 -
将多个对象合并成一个数组的方法
console.log(res); console.log(res.data.activities);//这是多个对象 var activityList = []; const activityData = res.data.activities; for (const key in activityData) { ...原创 2019-12-15 19:21:45 · 6429 阅读 · 1 评论 -
苹果浏览器微信底部返回栏显示/隐藏的问题
此段js代码完美解决; (function () { try { isIOS = !!navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/) if (fn.isIOS) { // window.history.pushState({}, "title", "#"); ...原创 2019-11-22 16:08:03 · 7084 阅读 · 2 评论 -
正则_2019年常用 javascript 正则大全
A股代码/^(s[hz]|S[HZ])(000[\d]{3}|002[\d]{3}|300[\d]{3}|600[\d]{3}|60[\d]{4})$/大于0, 小于150, 支持小数位出现5, 如145.5, 用于判断考卷分数/^150$|(^\d|^[1-9]\d|^[1][0-4]\d)(\.5)?$/html注释/<!--(.*?)-->$/md5格式(32位...转载 2019-07-31 12:19:56 · 360 阅读 · 0 评论 -
前端js基础语法和类型转换笔记总结(按照这个顺序进行学习)
js语法:js的引入方式行内式 : 直接把js代码嵌套到html开始标签里内嵌式 : 通过script 标签引入,可以放在页面的任何地方外链式 : 通过 script 标签的src 属性引入,js代码文件的扩展名为 .jsjs代码放的位置不同,会影响也页面的展示效果js语法:区分大小写使用字母,下划线_ ,美元符号$ 开头,后边可以是任何字母,数字,下划线 等的组合不能使用...原创 2019-05-05 18:44:14 · 228 阅读 · 1 评论