首页
壁纸
关于
发现大佬
Search
1
XBOX土耳其阿根廷购买教程
4,061 阅读
2
Oculus Quest2 无线投屏到PC
2,872 阅读
3
openwrt路由器安装uu加速器插件
1,990 阅读
4
xiaomi 小米pad 5 pro adb 删除自带app 系统精简 (非root)
1,550 阅读
5
Xbox Series X / S 开箱~~~~激动无比
1,320 阅读
学习
QuantumultX
JavaScript
web3
react
Solidity
雅思
Azure
游戏
随笔
登录
/
注册
Search
标签搜索
javascript
XSX
js
游戏
xbox
css
游戏截图
Xbox Series X
刺客信条
刺客信条英灵殿
web3
雅思
学习
IELTS
英语
教程
Xbox Series S
Steam
截图
leetcode
Arthur
累计撰写
109
篇文章
累计收到
104
条评论
首页
栏目
学习
QuantumultX
JavaScript
web3
react
Solidity
雅思
Azure
游戏
随笔
页面
壁纸
关于
发现大佬
搜索到
32
篇与
JavaScript
的结果
2021-08-19
原生JavaScript 处理 动态光标 插入 文字
原生JavaScript 处理 动态光标 插入 文字 鼠标点哪插哪 code: <!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> <input name="" id="txt1" cols="30" rows="10" :placeholder= /><br> <input type="text" name="" id="txt2"> <input type="button" value="添加" id="btn"> <input type="button" value="获取内容" id="btn1" οnclick="get()"> <div id="thistext"></div> <script type="text/javascript"> window.onload = function () { var oTxt1 = document.getElementById("txt1"); var oTxt2 = document.getElementById("txt2"); var oBtn = document.getElementById("btn"); oBtn.onclick = function () { getValue("txt1", oTxt2.value); } } </script> <script type="text/javascript"> function get() { document.getElementById("thistext").innerHTML = document.getElementById("txt1").value; console.log(document.getElementById("txt1").value) } //了在IE、Firefox、Opera等主流浏览器的获取光标位置(getCursortPosition)以及设置光标位置(setCursorPosition)的函数 //objid:textarea的id str:要插入的内容 function getValue(objid, str) { var myField = document.getElementById("" + objid); //IE浏览器 if (document.selection) { myField.focus(); sel = document.selection.createRange(); sel.text = str; sel.select(); } //火狐/网景 浏览器 else if (myField.selectionStart || myField.selectionStart == '0') { //得到光标前的位置 var startPos = myField.selectionStart; //得到光标后的位置 var endPos = myField.selectionEnd; // 在加入数据之前获得滚动条的高度 var restoreTop = myField.scrollTop; myField.value = myField.value.substring(0, startPos) + str + myField.value.substring(endPos, myField.value.length); //如果滚动条高度大于0 if (restoreTop > 0) { // 返回 myField.scrollTop = restoreTop; } myField.focus(); myField.selectionStart = startPos + str.length; myField.selectionEnd = startPos + str.length; } else { myField.value += str; myField.focus(); } } </script> </body> </html>
2021年08月19日
139 阅读
0 评论
0 点赞
2021-08-19
js-xlsx js本地处理excle
js-xlsx js本地处理excle 插件 github 地址 用法: // $(".btn-file") input[file] 元素 $(".btn-file").on("change", function (ev) {//当文件上传 var reader = new FileReader(); reader.onload = function (e) { try { var data = e.target.result; var workbook = XLSX.read(data, { type: 'binary' }); var sheetNames = workbook.SheetNames; // 工作表名称集合 var worksheet = workbook.Sheets[sheetNames[0]]; // 只读取第一张sheet var json = XLSX.utils.sheet_to_json(worksheet);//解析成json json = JSON.parse(JSON.stringify(json)) console.log(json) var arr = []; for (var i in json) { for (var j in json[i]) { arr[0] = j; arr.push(json[i][j]); } } console.log(arr.join(","))//最终输出拼接数据 } catch (err) { console.log(err) alert("文件类型不正确"); return false; } }; reader.readAsBinaryString(ev.target.files[0]); })
2021年08月19日
97 阅读
0 评论
0 点赞
2021-08-05
动态计算自适应css大小公式
为了做到自适应分辨率和设备,写了这个快捷的公式 为了自适应各种屏幕的大小,比如手机上375px的分辨率下 一个字的大小14px 就够了,,但是 在1080p甚至4k的屏幕上,14px的字就显得太小了,,很多人喜欢用rem去实现,但是rem有个弊端,,rem的本质有点 等比放大缩小的意思,,这就涉及到一个问题,,假设在手机上375px下 展示一部分内容,,但是在4k pc下 ,这一部分内容 就算等比 放大,,会显得 特别的傻,,明明有那么多的空间可以利用,,这就可以用我现在这个放法去优化 一般的设计稿 都是提供750 和 1920 两种宽度的设计稿,,设计师不会提供你所有分辨率下的样子,,但设计师会留出 预留可控的空间,比如750下 这个标题是24px,,1920下这个标题和间距都是40px,,,那么在小分辨率电脑1366*768的屏幕下 40px就会显得比较大了,,但如果你用rem去做,,就要根据js去写很多根元素的font size大小,,但是用了我的这个方法,只要写一个css属性就可以完美解决 这个问题 比如 1920分辨率下 这个字号是 40px 375分辨率下字号是 20px 那么在 375 -> 1920 这个分辨率提升的过程中,,字号从 20px -> 40px, 所以可以根据这个计算出一个线性的 二元一次 方程 输入375, 输出20 输入1920 , 输出40 那么可以假设 x为 输入 ,, y为输出 那么 设 y = ax + b 带入两组x y,求出a 和 b 这是很简单的数学知识了应该不用多说 假设两组数据是 x1,x2,y1,y2 ax1 + b = y1 ax2 + b = y2 换算出: a = ( y1 - y2 ) / ( x1 - x2 ) , b = ( x1y2 - x2y1 ) / ( x1 - x2 ) 算出这个a就是输入x的倍数,,x是屏幕分辨率,a是倍数, 那 ax不就是 vw 么 最终得出公式,,下面上代码 function calcAdpativePixel(minWidth, maxWidth, minPixel, maxPixel) { let a = parseFloat((((minPixel - maxPixel) / (minWidth - maxWidth)) * 100).toFixed(2)) let b = parseFloat((((minWidth * maxPixel) - (maxWidth * minPixel)) / (minWidth - maxWidth)).toFixed(1)) let str = 'calc(' + a + 'vw + ' + b + 'px)' return str } 输入 calcAdpativePixel(375,1920,20,40) 输出 calc(1.29vw + 15.1px) 用法 div{ font-size: calc(1.29vw + 15.1px); margin-top: calc(1.29vw + 15.1px); } 尝试切换一下分辨率 你会发现 属性值 随着分辨率大小而改变咯
2021年08月05日
180 阅读
0 评论
13 点赞
2021-07-29
JS操作数组
JS操作数组 方法 描述 push 在数组末尾插入元素 unshift 在数组开头插入元素 pop 从数组末尾删除元素 shift 从数组开头删除元素 concat 连接 2 个或更多数组,并返回结果 every 对数组中的每个元素运行给定函数,如果该函数对每个元素都返回 true,则返回 true filter 对数组中的每个元素运行给定函数,返回该函数会返回 true 的元素组成的数组 forEach 对数组中的每个元素运行给定函数。这个方法没有返回值 join 将所有的数组元素连接成一个字符串 indexOf 返回第一个与给定参数相等的数组元素的索引,没有找到则返回-1 lastIndexOf 返回在数组中搜索到的与给定参数相等的元素的索引里最大的值 map 对数组中的每个元素运行给定函数,返回每次函数调用的结果组成的数组 reverse 颠倒数组中元素的顺序,原先第一个元素现在变成最后一个,同样原先的最后一个元素变成了现在的第一个 slice 传入索引值,将数组里对应索引范围内的元素作为新数组返回 some 对数组中的每个元素运行给定函数,如果任一元素返回 true,则返回 true sort 按照字母顺序对数组排序,支持传入指定排序方法的函数作为参数 toString 将数组作为字符串返回 valueOf 和 toString 类似,将数组作为字符串返
2021年07月29日
128 阅读
0 评论
0 点赞
2021-07-23
chrome启用Experimental JavaScript
chrome启用Experimental JavaScript 访问 chrome://flags/#enable-javascript-harmony
2021年07月23日
186 阅读
0 评论
0 点赞
1
...
4
5
6
7