
JS
文章平均质量分 68
wwwarewow
这个作者很懒,什么都没留下…
展开
-
tp模板中过滤换行符
今天有这样一个需求, 从数据库中取到的值,放到前端标签中有换行。fastadmin 使用的是tp框架, 所以它们的处理方式是一样的。要注意特数字符的转义才行。原创 2024-06-10 22:06:01 · 178 阅读 · 0 评论 -
学习JQuery插件开发教程
如果你跟我一样,jQuery属于入门级的,那么我建议你看我下一篇jQuery教程:自己动手开发jquery插件 ,这篇插件比较容易理解和模范,适合新手开发jQuery插件。推荐你去看一看。 在逛codeproject网站的时候,突然看到一篇文章:How to write plugin in Jquery. 如果对E文好的同学 ,可以看上面的连接。 现在我把上面网站的及结合自己的想法写这篇文章。希望能得到大牛们的支持和谅解。。。大鸟飞过。。。欢迎拍装。 插件编写的目的是给已经有的一系列方法或函数做一个封装,以原创 2022-07-10 23:12:33 · 776 阅读 · 0 评论 -
【CSS特效】108个小时钟组成大数字时钟
今天看到一篇 CSS动画篇之炫酷时钟之时钟墙, 是由108个小的时钟,画出大的时钟,本来是一分钟旋转一次,现在改成每秒旋转一次。 上效果图:这个效果图共有 6行 18列, 每一个格子都是由两个指针组成的小时钟。时钟默认状态是这种情况 所以用不到的格子,显示的就是这种状态。 分和秒之间的“冒号”上下方就是这种。组成数字所需要的基本元素:只要控制好每个小时钟,按照一定的规律旋转即可。HTML代码 CSS代码JS代码拆解:numbers数组放置了0-9这10个数字, 怎么组成的。比如数字 0的翻译 2022-07-05 16:41:33 · 505 阅读 · 0 评论 -
【超详细】Tinymce富文本使用教程
官网文档:www.tiny.cloud/docs/ 社区版及开发版官方最新打包地址:www.tiny.cloud/get-tiny/self-hosted/ 汉化包:tinymce.ax-z.cn/static/tiny/langs/zh_CN.js例如: 获取内容:tinyMCE.activeEditor.getContent() 设置内容:tinyMCE.activeEditor.setContent("需要设置的编辑器内容") 获取内容:tinyMCE.原创 2022-06-10 16:03:37 · 22215 阅读 · 0 评论 -
【js】判断某一天是星期几
我们会遇到的需求的是,获取今天或者某一天所在星期的开始和结束日期。我们这里来获取今天所在星期的始末日期,我们可以通过来获取今天是星期几,然后再通过这个减去或者加上一定的天数,就是这个星期的开始日期和结束日期。是不是很完美?但,这里有一个很大的 bug!注意:如果今天是周日,那么就会是 0,若还是按照上面的思路,则星期一的日期会变成下周一的日期,星期日的日期会变成下周日的日期。因此,这里我们需要特殊处理下,当 todayDay 为 0 时,就将其赋值为 7。同时,我们还可以传入一个时间戳,获取特定某一天翻译 2022-06-04 22:13:49 · 3886 阅读 · 0 评论 -
JS禁止打开控制台
主要为了通过禁止打开控制台,防止别人进行代码调试。1、禁止右键查看源码和F12//禁止F12键盘事件document.addEventListener('keydown', function(event){ return 123 != event.keyCode || (event.returnValue = false)});//禁止右键、选择、复制document.addEventListener(‘'contextmen翻译 2022-06-02 23:59:20 · 3451 阅读 · 0 评论 -
如何优雅地书写JavaScript
这篇文章包含了几乎所有关于提高代码质量的内容,尤其是在构建大型应用程序时。主要包括四个部分:我想你们大多数人之前都听说过SOLID,也就是面向对象设计里的SOLID原则。这些原则基于面向对象设计,所以可能不适合其他编程范式。即便如此,它也涵盖了大多数情况。例如,SOD既可以应用于面向对象编程,也可以应用于函数式编程。变量或许是在开发过程中最常见的术语。命名// 不推荐// 我不知道这个变量代表什么意义const flag = true;// 推荐const downloaded = true;原创 2022-06-02 23:56:47 · 135 阅读 · 0 评论 -
JS 中一些高效的魔法运算符
这两天有同事说我挺久没更新文章了,不过最近一段时间确实有点忙,一直在忙着两个活动中心的改版,没什么时间来更新文章。今天终于抽空可以写一写。JavaScript 现在每年都会发一个新版本,里面也会新增一些操作更加便利、高效的运算符。今天我们就来盘点下几个高效的魔法运算符。之前当我们想要使用某个结构比较深的属性,同时又无法确定所有的父级一定存在时,我们需要进行一连串的判断,例如一个数据结构:我们想要获取最内层的 math 属性的值时:不过当我们使用可选链运算符后,判断就简单很多了,可选链运算符会在链翻译 2022-06-02 21:36:37 · 250 阅读 · 0 评论 -
nodejs 中复制文件和文件夹的多种方式
copyFile()方法的操作最简单,可以直接将文件复制到目标目录中。但这个方法有一个缺点:目标目录一定要存在(它不会自动创建目录),若不存在时则会抛出异常。因此在使用 copyFile()方法时,一定要确保目录肯定存在,若不存在的话,则需要使用或来创建目录。而且,copyFile()不能复制目录。读取 src 文件的内容,然后再写入到目标文件中。这种方式适合于,在复制过程中,需要修改内容的,再写入目标文件。缺点与上面的 copyFile()一样,writeFile()只能在已存在的目录中才翻译 2022-06-01 23:29:19 · 19481 阅读 · 0 评论 -
【收藏的JS库】 Javascript常用的库 (包含图片处理、动画库、语音命令库、视觉检测、机器学习等)
在研发周期紧张的背景下,切记要避免时间开销在无用工作上 (比如造轮子) 如何有效确认是否已有轮子,本篇文章做一个list来帮助大家。只需要记住下面的库就可以解决工作中95%日常问题。velocity:加速 JavaScript 动画。jquery.transit:拥有超级流畅的 CSS3 变换和过渡效果的 jQuery 插件。impess.js:在 HTML 文档里,运用 CSS3 变换和过渡制作类似 Prezi 的展现效果。bounce.js:可以立刻创建有趣的 CSS3 动画。GreenSock原创 2022-06-01 21:45:51 · 1883 阅读 · 0 评论 -
js 生成UUID的几种方法
简介:UUID(Universally Unique IDentifier) 全局唯一标识符。UUID是一种由算法生成的二进制长度为128位的数字标识符。UUID的格式为“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”,其中的 x 是 0-9 或 a-f范围内的一个32位十六进制数。在理想情况下,任何计算机和计算机集群都不会生成两个相同的UUID。4.第四种说明:生成32位UUID方法原创 2022-06-01 13:57:27 · 828 阅读 · 1 评论 -
html5实现图片预览和查看原图
html5 从一开始就给开发者很多的期待,提供众多新的 API,不用再想以前一样,为了实现某个功能写很多的代码。在以前,如果要实现图片预览会怎么做呢,因为为了安全的原因,web 端的 js 是不能读取文件的本地真实路径的,那么只能将图片上传到服务器上,然后再拿到图片的链接,这样才能实现图片预览。而服务器呢,比如有两个文件夹,一个是临时文件夹,一个是正式文件夹,临时文件夹会定时进行清理,正式文件夹是用户确认使用的图片存储的位置。现在 html5 提供的 API 不再让图片预览那么麻烦,FileReader 提原创 2022-06-01 13:33:28 · 3468 阅读 · 0 评论 -
jQuery 选择器
jQuery 选择器选择器 实例 选取 * $("*") 所有元素 #id $("#lastname") id="lastname" 的元素 .class $(".intro") 所有 class="intro" 的元素 element $("p") 所有 <p> 元素 .class.class $(".intro.demo") 所有 class="intro" 且 class="demo" 的元素转载 2022-05-31 16:51:15 · 121 阅读 · 0 评论 -
原生 CSS + JS 实现一个标签输入框
标签输入框,演示效果如下:标签输入框,要实现的功能:点击输入框可以输入内容 按回车可以生成标签 按退格键可以删除标签 点击标签上的关闭按钮可以 删除标签页面比较简单,没必要引入一个完整的框架。就用原生的来实现一下吧。还可以练习下技术。一、自适应输入框布局不管什么组件,布局都是最重要的。这个布局分为标签和输入框两个部分,假设 HTML 如下<div class="tags-content"> <tag>CSS<a class.原创 2022-05-30 13:10:03 · 1740 阅读 · 0 评论 -
收藏的常用的js代码方法
1. 检查日期是否有效该方法用于检测给出的日期是否有效:const isDateValid = (...val) => !Number.isNaN(new Date(...val).valueOf());isDateValid("December 17, 1995 03:24:00"); // true2. 计算两个日期之间的间隔该方法用于计算两个日期之间的间隔时间:const dayDif = (date1, date2) => Math.ceil(Math.a原创 2022-05-27 16:00:25 · 104 阅读 · 0 评论 -
toastr —— 轻量级的消息提示插件
toastr是一款轻量级的消息提示插件,基于JQuery,使用简单方便,外观大气漂亮。点击这里进入toastr在线调试使用 点击这里进入toastr官方网站使用效果如下图所示:插件使用需要引用的JS和CSS文件如下图所示:各版本JQuery:jquery-3.3.1.min.jstoastr文件:toastr.min.jstoastr.min.css使用说明:插件有四种消息类型,分别如下图所示:toastr.info("您的手机已经欠费...转载 2022-05-27 15:47:43 · 4342 阅读 · 0 评论 -
34个非常实用的JS一行代码
目录1. 检查日期是否有效2. 计算两个日期之间的间隔3. 查找日期位于一年中的第几天4. 时间格式化5. 时间格式化26.字符串首字母大写7.翻转字符串8.随机字符串9.截断字符串10.去除字符串中的HTML11.从数组中移除重复项12.判断数组是否为空13.合并两个数组14.判断一个数是奇数还是偶数15.获得一组数的平均值16.获取两个整数之间的随机整数17.指定位数四舍五入18.将RGB转化为十六机制19.获取随机十六...翻译 2022-05-26 23:35:43 · 1060 阅读 · 0 评论 -
JS基础知识(覆盖JS基础面试题)
总结一些前端基础的知识,有些知识可能在前端面试的时候会问到,所以做个记录,也有助于其他人查看,如果有什么问题,可以指出,会积极修正。变量类型和计算JS中typeof的类型有哪些 console.log(typeof undefined); //undefined console.log(typeof 123); //number console.log(typeof '123'); //string console.log(typeof true);...转载 2022-05-19 20:06:10 · 113 阅读 · 0 评论 -
ES6 ~ ES12 核心知识体系汇总(面试官:你不要过来呀)
引子:ES新特性已经是时代发展所必须掌握的知识,主流浏览器几乎全部支持,不支持还有Babel,怕啥?此文涉及的知识倾向于面试总结,而非零基础学习,其中的ES6-ES12的叫法更准确的应该叫ES2015、ES2016....1.let/constlet声明变量,const声明常量,且声明时必须初始化,后续常量可以修改(例如对象属性),不能重新赋值推荐尽量使用const共同特性:块级作用域({}、for、while、do while、if、switch) 不允许同一作用域重复声明翻译 2022-05-19 13:20:24 · 195 阅读 · 0 评论 -
保留两位小数 toFixed(2)的精度问题
toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。例如将数据Num保留2位小数,则表示为:toFixed(Num);但是其四舍五入的规则与数学中的规则不同,使用的是银行家舍入规则,银行家舍入:所谓银行家舍入法,其实质是一种四舍六入五取偶(又称四舍六入五留双)法。具体规则如下:简单来说就是:四舍六入五考虑,五后非零就进一,五后为零看奇偶,五前为偶应舍去,五前为奇要进一。经测试发现,在chorme下面,并没有完全遵守这个规则,尤其是5的后面没有数字的时候,不是这么判断的,如下:原创 2022-05-19 12:49:59 · 2675 阅读 · 0 评论 -
用前端JS怎么优化10000000条数据循环
最近做了直播相关的业务,然后对于大数据相关的优化做了一下复盘。为了了解我是怎么做这个优化的,我们先从如何按照特定的条件删除一个数组说起。1、如何删除数组中的元素场景:有一个数组,需要删除满足条件的数组。示例:const arr = [1,2,3,4,5,6,7,8]删除小于5的元素,删除后的元素为const arr2 = [5, 6, 7, 8]代码实现:const arr = [1,2,3,4,5,6,7,8]for(let i = 0, len = a..翻译 2022-05-19 08:34:44 · 4129 阅读 · 0 评论 -
JavaScript获取鼠标位置的三种方法
在一些DOM操作中我们经常会跟元素的位置打交道,鼠标交互式一个经常用到的方面,令人失望的是不同的游览器下会有不同的结果甚至是有的游览器下没结果,这篇文章就鼠标点击位置坐标获取做一些简单的总结。获取鼠标位置首先要了解什么是event,event是一个声明了全局变量的一个对象,在chrome和IE下,可以随意访问,对于好奇的朋友console.log一下event。但!!!Firefox下是没有event这个对象的!!好消息的是:在IE8,chrome下,是有event这个对象的!鼠标点击位置坐标转载 2022-05-17 19:42:26 · 10049 阅读 · 2 评论 -
记一次node爬虫经历,手把手教你爬虫
今天业务突然来了个爬虫业务,爬出来的数据以Excel的形式导出,下班前一个小时开始做,加班一个小时就做好了。因为太久没做爬虫了!做这个需求都是很兴奋!需求说明访问网站 (循环)获取页面指定数据源 根据页面数据源再(循环)访问详情数据 记录详情数据,以Excel形式导出。所需模块根据需求所得五个模块// 请求模块(1.访问网站)const request = require('request');// 可以看做成node版的jQuery(2.获取页面指定数据源)const c转载 2022-05-17 18:24:54 · 620 阅读 · 0 评论 -
纯JS实现的鲜花,惊艳到了我。
刚开始看到效果的时候,还以为是gif图片呢。 后来通过F12才发现是纯js实现的。先看下效果:<html><head><title>JS鲜花</title><meta charset="UTF-8"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head><body style="margin-le原创 2022-05-17 18:19:54 · 543 阅读 · 0 评论 -
三种方法实现ajax跨域
在工作中经常会遇到ajax的跨域请求,会出现禁止访问的安全限制。所以就整理了一下ajax的跨域的方法。比如说你的网站域名是aaa.com,想要通过AJAX请求bbb.com域名中的内容,浏览器就会认为是不安全的,所以拒绝访问。会出现跨域问题的几种情况:后台在百度上寻找解决方案解决了这个问题,一共总结出三种方案:代理、JSONP、XHR2(XMLHttpRequest Level 2)。第一种方法:代理这种方式是通过后台(ASP、PHP、JAVA、ASP.NET)获取其他域名下的内容,原创 2022-05-17 18:11:20 · 8500 阅读 · 0 评论 -
通过FormData对象异步上传文件
通过new FormData对象异步上传文件现在有一个场景,一个form表单里面,除了普通的数据外,还有文件上传input[type=file],怎么可以ajax异步提交呢?如果采用表单serialize()序列化用Ajax的方式提交,也无法把上传文件的文件流进行序列化,所以不行,那么现在可以用到FormData对象了。new FormData该对象不仅仅可以序列化文件,一样可以用作表单数据的序列化,(就是说包含了serialize()的功能)首先看一下formData的基本用法:FormD翻译 2022-05-17 16:06:04 · 493 阅读 · 0 评论 -
利用js实现前端简单的加密与解密
JS实现前端网页加密解密技术,可用作选择性隐蔽展示,并不能作为真正的、安全的代码加密。主要用的是JS里charCodeAt()和fromCharCode()的两个方法。利用String对象的charCodeAt()方法和fromCharCode()方法对字符的ASCII编码进行获取和修改。例子代码:<!DOCTYPE html><html><head> <meta charset="utf-8"> <titl.翻译 2022-05-17 15:49:57 · 1307 阅读 · 0 评论 -
ES6的十大特性
ES6(ECMAScript2015)的出现,无疑给前端开发人员带来了新的惊喜,它包含了一些很棒的新特性,可以更加方便的实现很多复杂的操作,提高开发人员的效率。本文主要针对ES6做一个简要介绍。也许你还不知道ES6是什么, 实际上, 它是一种新的javascript规范。在这个大家都很忙碌的时代,如果你想对ES6有一个快速的了解,那么请继续往下读,去了解当今最流行的编程语言JavaScript最新一代的十大特性。以下是ES6排名前十的最佳特性列表(排名不分先后):1.Block-Scoped翻译 2022-05-17 15:19:34 · 463 阅读 · 0 评论 -
js代码实现右键粘贴达到图片自动上传的功能
在使用富文本编辑器的时候,其中有一个功能,复制一张图片然后粘贴进文本框,这张图片就被上传了,那么这个方便的功能是如何实现的呢?现在用js代码来实现一下。在这个操作过程中,我们需要做的就是:监听粘贴事件=>获取剪贴板里的内容=>发请求上传需要明白的是:我们只能上传截图工具截的图片(qq截图、微信截图等),不能粘贴上传系统里的图片(从桌面上、硬盘里复制),因为他们是存在完全不同的地方。知悉paste event这个事件:当进行粘贴(右键paste/ctrl+v)操作时,该动作原创 2022-05-17 15:23:21 · 508 阅读 · 0 评论 -
程序员的520,送给女友的几行漂亮的代码(js版)
效果1:html代码:<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>520爱心表白代码</title><link rel="stylesheet" href="css/love.css"></head><body><div class="container" onselec.原创 2022-05-16 12:59:51 · 56035 阅读 · 0 评论 -
Fastadmin 关闭搜索框的autocomplete提示
Fastadmin列表页的搜索框,点击用户名,邮箱或者其他字段,会有以前填过的数据,如图所示:其实做技术的都知道,关闭input标签的autocomplete的属性就行。但fastadmin的这个搜索框是js渲染出来的,到底在哪个地方设置呢?教大家三种方法:1.在字段上单独设置,增加extend:'autocompleate="off"{field: 'api', title: __('接口'),extend:'autocomplete="off"'},这种方法需要每个字段都.原创 2022-05-11 10:04:03 · 1485 阅读 · 0 评论 -
jquery 实现数字动态增长变化效果
由于项目需要实现两处数据每时每刻动态变化的效果。就是投大屏的那种, 数据不停的向上增长,不是从0开始的那种。纯jquery代码,模拟数据动态增长,无后台数据交互,如下:<body> <div><span class="count">10</span></div> <div><span class="count">10</span></div></body>原创 2022-05-07 11:19:50 · 1508 阅读 · 0 评论 -
JS使用正则 一行代码格式化时间
js很简洁的格式化时间代码new Date().toLocaleString().replace(/\//g, "-").replace(/-(\d)\b/g, '-0$1')//运行效果//'2022-05-06 09:22:13'new Date().toLocaleString().replace(/\//g, "-")//运行效果//'2022-5-6 09:22:13'只格式化日期new Date().toLocaleDateString().replace(/原创 2022-05-06 09:35:01 · 426 阅读 · 0 评论