Javascript
sinolzeng
这个作者很懒,什么都没留下…
展开
-
自制单选多选日历文本框文本域控件
/*目前有三个控件,版本号2021.06.23增加各种控件随滚动条自由移动的功能单选控件:ZZSOption(id,[1,2,3],offsetHeight:20,placeholder:"123",onlytips:true});offsetHeight是高度向下偏移量placeholder是默认值onlytips表示placeholder的内容是否是可用的实际值,还是只是一个提示语,默认true,只是一个提示语,当为false时则是一个默认值,用Widget.getResult()的时.原创 2021-06-23 18:02:46 · 471 阅读 · 0 评论 -
由js实现延时函数sleep延伸出来的一点想法
刚下班,累了,但是这个问题其实困扰我很多年了,今晚又偶然想起,决定把这个问题拿出来说一说,但是我就不打算给出具体代码了,因为,凡是优雅而彻底的方法他如果不是原生支持的那就一定是复杂的实现,我现在没有精力去写那么复杂的东西。但是,提供一个思路,有兴趣的朋友自己去实现也可以。首先我们来看看为什么js原生不支持像python的time.sleep()这样的方法,因为js是单线程的嘛,你一sleep他就阻塞了。当然,js也给出了一些代替的机制,那就是setTimeout和setInterval,还有写游戏.原创 2021-04-06 23:02:43 · 1729 阅读 · 0 评论 -
用JavaScript读取excel并按列转换为数组
首先说一下,ie浏览器有个ActiveXObject的属性,可以很方便的操作excel,网上也有很大教程,就不再赘述了,自行百度。如果是非ie浏览器的,则需要用到html5的FileReader属性,以及网上的js-xlsx库。微软的xlsx格式本质上是一个zip。而FileReader可以将文件读取成二进制流,通过一定解码即可将zip的二进制流给解析出来,之后的处理sheet以及单元格内容就简单了。如果想要完全自己写,需要对xlsx的压缩编码机制有非常深入的了解。国内网上几乎搜不到半点资料,国外稍有一原创 2021-03-05 14:46:51 · 2663 阅读 · 0 评论 -
用JavaScript实现列数据的标出重复项和去重(解决科学计数法的excel数据去重异常问题)
是这样,通常情况下标出重复项和去重复项这种比较简单的工作交给excel就可以了,但是excel有时候会出现无法处理的情况,比如说一串数字太长,会自动用科学计数法来表示,这个时候如果标出重复项就会出现乱标记的情况,如果将多位的数字转换成字符串也会时好时坏,百度搜了许久,无果。我默默的问候了一下excel的开发者的母亲,然后决定自己搞一个,于是就又多了一个小工具:<!DOCTYPE html><html><head> <title>标出重复项<原创 2021-02-24 10:04:42 · 479 阅读 · 0 评论 -
用JavaScript实现简单的excel列转sql字符串
老惯例,先简单解说一下再上代码。有时候会有这样的业务场景,即需要在sql的某些条件里面大量用到in或者not in进行筛查。我们知道,in里面的内容其实就是字符串然后用逗号隔开。这个工具的作用就是把excel列的内容,如:苹果梨子樱桃转换成:("苹果","梨子","樱桃")非常简单,这样就可以放到sql里面去用了。<!DOCTYPE html><html><head> <title>excel列转sql字符串</t原创 2021-02-24 09:52:15 · 233 阅读 · 0 评论 -
将oracle select * from all_tab_comments where comments like ‘%XXXX%‘查询结果转为select语句
oracle查询表格的时候会有一句 select * from all_tab_comments where comments like '%XXXX%'就能查到相关注释的一些表格,这些表格有时候很想跑出来看一下,我用的是pl/sql,一个个复制很麻烦,所以就想到自己写一个js小工具,复制两列,第一列是项目空间,第二列是表名,比如:项目空间 表名 注释deparment Personnel 人事部信息deparmentRD ...原创 2021-02-24 09:44:24 · 783 阅读 · 0 评论 -
用html和js写一个直接在页面运行js的页面
这个需求是这样,有时候需要对一些js进行调试,但是每次都在浏览器按f12会有点麻烦,写了这样的一个界面之后,就可以直接在html界面上直接跑js了。废话不多说,上代码:<!DOCTYPE html><html><head> <meta charset="utf-8" /> <title>直接运行js</title></head><body style="margin:0;padding:0;wid原创 2021-02-24 09:34:21 · 1086 阅读 · 0 评论 -
使用帆软finereport实现跳转的一点心得
最近单位在用帆软做快速开发,我虽然比较熟悉JavaScript和HTML,自己从零开始造轮子效果可能更好,但是毕竟局里想要使用这个,又是团队项目,自然是能省事就省事一点,有得用就用吧,年纪大了,我也就懒得自己造轮子了。情人节那天跟我出来喝茶的女孩,我还送了她轻松熊的,正月初七就换了不知道和谁的情侣头像,初六晚上还和别人去看那部电影《你好,李焕英》,不用问我为什么知道这件事,我是个早就被伤害到千疮百孔的人,我真的是麻木了,彻底的麻木了,想起以前大学第一次表白被拒那会我伤心了两年,而现在,我伤心不到两个小时原创 2021-02-22 17:33:23 · 7033 阅读 · 2 评论 -
用javascript自制ctf词频分析工具
不废话,上代码:<!DOCTYPE html><html><head> <title></title></head><body style="margin:0;width:100%;height:100%;"><!--created by zengzhaosi--><p style="background-color:deepskyblue;width:100%;height:50px;原创 2021-02-21 15:42:28 · 1176 阅读 · 1 评论 -
转载:JavaScript,JS如何控制input输入字符限制
转自:https://www.cnblogs.com/acetaohai123/p/6571784.htmlENTER键可以让光标移到下一个输入框<input onkeydown="if(event.keyCode==13)event.keyCode=9" >只能是中文<input onkeyup="value=value.replace(/[ -~]/g,'')" onkeydown="if(event.keyCode==13)event.keyCode=9">屏蔽输...转载 2021-02-19 16:32:33 · 838 阅读 · 0 评论 -
转载:js拖拽文本文档并读取内容到textarea
https://blog.csdn.net/qq_36242361/article/details/77161462转载 2021-02-19 15:41:29 · 331 阅读 · 0 评论 -
转载:js模板引擎
全球最快的JS模板引擎废话不多说,先上测试:亲测请访问:【在线测试地址】单次结果不一定准确,请多测几次。tppl的编译渲染速度是著名的 jQuery 作者 John Resig 开发的tmpl的43倍!与第二名 artTemplate 也有一倍的差距。似乎每一个大公司都选择自己开发模板引擎并将其开源,结果就是社区充斥着数不清的引擎,让人眼花缭乱无从选择。随着时间的流逝,越来越多的功能被添加进去,最终让一个强悍的发动机变成了一台臃肿复杂零件生锈的拖拉机。天呐,我就想网页面里插一...转载 2021-02-19 15:38:32 · 206 阅读 · 0 评论 -
帆软报表加载(开始)完毕执行自定义JavaScript
Web页面事件1.概述Web 页面事件在模板>模板 Web 属性里面的分页预览设置,填报页面设置与数据分析设置几个标签页中均可设置,分别作用于不同的预览方式,下面以分页预览为例,进入分页预览设置标签,选择为该模板单独设置,点击事件设置下的+按钮,增加事件,如下图:2.明细2.1所有预览都包含的事件 事件 触发时间 事件名称 加载起始 报表页面刚刚打开时...原创 2021-02-19 15:34:50 · 3306 阅读 · 0 评论 -
用javascript制作随机汉字打字练习小程序
这个是上一篇的续集。也是2020年年底的时候给银行妹写的小程序,对我来说已经没什么卵用了。但是,还是在CSDN里面留着吧,就像之前用python给那个叫xc的渣女写的转换器一样。于我是无用之物,但是发出来也许能够给广大网友一点点帮助,那也算是挺欣慰的了。至少,就算是爱情永远无望,我起码还有代码永远相伴吧。<!DOCTYPE html><html><head> <title>打字练习</title> <meta http-equi原创 2021-02-11 11:22:26 · 899 阅读 · 0 评论 -
用javascript实现一个打乱文字小程序
是这样,2020年11月到12月的时候,经别人介绍,认识了一个相亲女孩,是在银行上班的。他们需要考打字,就是考你打字的速度,我就简单的用js代码生成一个可以打乱文本字序的小程序。这个东西实在是太简单了,本来都懒得发,但是编程这种东西吧,有轮子就要把轮子存起来,简单归简单,以后如果有需要用到重新写的话还是要花些时间。如果存在我自己的博客里面,以后有需要用到就直接把代码复制下来就可以了。所以,我一直提倡,轮子再简单也不要随便扔,尤其是自己造的轮子。造轮子不是什么坏事,至少对学习来讲,不是什么坏事,但是对原创 2021-02-11 11:18:11 · 666 阅读 · 5 评论 -
用javascript实现数字雨
数字雨这个东西,无数人写过了,我这个是上课无聊写的版本,纯属娱乐,没有经过性能优化的版本。和别人不太一样的是我这个版本用了ascii码,数字会变化,就是性能不佳,懒得优化。和之前的太阳系模型、小人互殴系统一样都是拿来伪装成动态壁纸的。<!DOCTYPE html><html><head> <title>number rain</title></head><body style='background-col原创 2021-02-11 11:07:54 · 589 阅读 · 1 评论 -
用javascript实现简单的物质(密度)分布图
可能这个东西大部分人看名字都觉得云里雾里,先不废话,上张图:在游戏开发的时候,经常生成各种各样的随机地图,在这些随机地图里面,往往需要随机的物质分布。典型的场景,比如牧场物语这类农场养成类的农地上的杂草,在长度x和宽度为y的范围内生成杂草。又或者,像泰拉瑞亚这样的游戏,需要在一定范围内生成随机的矿物质分布图。那么,这种东西要怎么实现呢?实现方法其实很多,我在外网找到的很多教程都把简单问题复杂化了,用到了很多算法。不是说算法不好,而是对性能的要求比较高,如果是前端开发,自然是越简单原创 2021-02-11 11:00:14 · 598 阅读 · 0 评论 -
百度网盘javascript加速视频播放速度
RT,打开控制台(F12),在线播放百度网盘视频的时候,用以下指令即可调节播放速度,因为百度网盘的下载速度惨不忍睹,有时候在拼夕夕上面购买一些课程视频的时候就可以用这种方法加速观看了。videojs.getPlayers("video-player").html5player.tech_.setPlaybackRate(1)一倍速videojs.getPlayers("video-player").html5player.tech_.setPlaybackRate(2.5)二点五倍速...原创 2021-02-11 10:40:48 · 824 阅读 · 0 评论 -
用javascript打造一个简单的小人互殴系统(实现javascript游戏基本要素:生命值、伤害、移动、闪避等)
这个东西,还是和上次那个太阳系模型一样,是我在在职MBA课堂上无聊时随便做的,图片是随便弄的,因为是闹着玩的,所以并没有使用html5或者svg。简单说,这个东西给人物加了碰撞检测和血条、伤害计算等等一些游戏里面最基本的元素,每个小人会随机选择场上的另一个小人为目标向它发射攻击的球球,球球如果命中敌方,敌方就会受到伤害,血量为零就挂了。每个小人都会在画面里面随机移动,至少不能傻站着挨打吧。没考虑那些什么复杂的闪避了,毕竟只是我随手之作,之所以发到CSDN上面仅作备忘之用,当然,也许可以给无意间搜到我原创 2021-02-11 10:35:48 · 621 阅读 · 2 评论 -
用javascript伪造太阳系模型系统
这个东西,是我在读在职研的课堂上无聊的时候随便弄的,实现了椭圆和圆形的轨道运转。这些东西吧,其实都是很简单的,在游戏领域,轨道运动是很有意义的,我就顺便把代码po出来,做备忘吧。由于是无聊时的即兴之作,并没有考虑性能优化和使用html5的canvas或者svg,只是用了最简单的div而已,要想用html5请自行实现了。<!DOCTYPE html><html><head> <title></title></head>原创 2021-02-11 10:15:05 · 232 阅读 · 1 评论 -
解决python时间戳最大为3001年1月1日15时59分59秒的问题
自己写个python函数解决python时间戳最大为3001年1月1日15时59分59秒的问题我没有深入研究过python的时间戳原理,但是一旦时间超过3001年1月1日15时59分59秒就会报错,难道这一天是传说中的世界末日吗?我很奇怪为什么很久没写csdn的文章了,写文章的界面会变得如此之恶心,连标题栏都没了。csdn真的是决心在dog带的路上狂奔到底吗?不罗嗦了,直接商代码吧:import mathdef calcTimeStamp(t): #时间戳的原点是1970年1月1日0原创 2021-01-11 22:56:29 · 917 阅读 · 4 评论 -
nodeValue以及其与value的区别以及JS nodeName、nodeValue、nodeType返回类型
nodeName、nodeValue 以及 nodeType 包含有关于节点的信息。nodeName 属性含有某个节点的名称。元素节点的 nodeName 是标签名称属性节点的 nodeName 是属性名称文本节点的 nodeName 永远是 #text文档节点的 nodeName 永远是 #document注释:nodeName 所包含的 XML 元素的标签名称永远是转载 2015-02-04 09:18:12 · 946 阅读 · 0 评论 -
DOM DocumentFragments
I was playing around with DOM DocumentFragments recently, in JavaScript, seeing what I could make with them. Roughly speaking, a DocumentFragment is a lightweight container that can hold DOM nodes.转载 2015-02-17 23:14:19 · 525 阅读 · 0 评论 -
创建CSS和处理的一些方法
下面的内容来自国外的论坛,比较简单,相信大家可以看得懂,因为最近我实在是太忙了,没时间慢慢整理,所以暂时先这样贴出来。createCSSSelector(".a","display:none;display:block");function getCSSRule(ruleName, deleteFlag) { // Return requested style o原创 2015-01-23 09:53:37 · 490 阅读 · 0 评论 -
JS删除数组元素的函数介绍
有时候我们需要数组元素的值,那么就可以参考下面的方法,文中提到了不少这方面的资料,数组去重功能等split将字符串转为数组并输出的代码:复制代码 代码如下: function spli(){ datastr="2,2,3,5,6,6"; var str= new Array(); str=datastr.sp转载 2015-01-23 08:27:40 · 1187 阅读 · 0 评论 -
ie和火狐兼容问题
1. document.form.item 问题 (1)现有问题: 现有代码中存在许多 document.formName.item("itemName") 这样的语句,不能在Firefox(火狐)下运行 (2)解决方法: 改用 document.formName.elements["elementName"] 2. 集合类对象问题 (1)现有问题: 现有代码中许多集合转载 2015-02-25 09:01:20 · 1651 阅读 · 0 评论 -
IE6-IE9不支持table.innerHTML的解决方法分享
让ie6-ie9支持table.innerHTML,其实这里只是对table做了处理,对其他不支持的元素可以用类似的方案测试代码: 复制代码 代码如下: var oTable=document.getElementById("test"); oTable.innerHTML="innerHTML"; 上述代码在IE6-9中无转载 2015-02-17 22:18:30 · 1338 阅读 · 0 评论 -
用DocumentFragments或innerHTML取代复杂的元素注入
我们的浏览器执行越来越多的特性,并且网络逐渐向移动设备转移,使我们的前端代码更加紧凑,如何优化,就变得越来越重要了。前端给力的地方是可以有 许多种简单的策略和代码习惯让我们可以保证最理想的前端性能。我们这个系列的主题就是要告诉你9种代码小技巧,只需要一分钟,就可以优化你现有的代码。使用DocumentFragments或者innerHTML代替复杂的元素注入DOM操作在浏览转载 2015-02-17 23:05:33 · 1211 阅读 · 0 评论 -
ie下提示SCRIPT1028:缺少标识符、字符串或数字
例如下面一段代码 ie下SCRIPT1028: 缺少标识符、字符串或数字 var a = { x: 1, y: 2, }; alert(a.x); 如果在ie的兼容性视图,或者ie6 ie7下, 搜狗浏览器的兼容性视图下在控制台会早y:2,所转载 2015-02-17 22:15:48 · 4089 阅读 · 0 评论 -
正则表达式全部符号解释
字符描述\将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。^匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的转载 2015-02-18 12:12:19 · 390 阅读 · 0 评论 -
javascript (function(){})()
代码如下:(function(){ //这里忽略jQuery所有实现 })(); (function(){ //这里忽略jQuery所有实现 })(); 半年前初次接触jQuery的时候,我也像其他人一样很兴奋地想看看源码是什么样的。然而,在看到源码的第一眼,我就迷糊了。为什么只有一个匿 名函数又没看到运行(当然是运行了……),就能有jQuery这么个函数库了?于是,转载 2015-02-17 23:04:43 · 451 阅读 · 0 评论 -
javascript判断ie浏览器
1.判断版本是否低于9:if(navigator.appName.indexOf("Internet Explorer")!=-1){ //yeah, he's using IE var badBrowser=( navigator.appVersion.indexOf("MSIE 9")==-1 && //v9 is ok navigato原创 2015-01-17 09:52:54 · 839 阅读 · 0 评论 -
javascript判断对象、字符串、数组是否为空(兼容绝大部分浏览器)
// 用变量保存可以加速对对象原型的hasOwnProperty的访问。var hasOwnProperty = Object.prototype.hasOwnProperty;function isEmpty(obj) { // 本身为空直接返回true if (obj == null) return true; // 然后可以根据长度判断,在低版本的ie浏览器中原创 2015-01-21 09:07:41 · 11675 阅读 · 0 评论 -
js GB2312和unicode互转
var GB2312UnicodeConverter = { ToUnicode: function (str) { return escape(str).toLocaleLowerCase().replace(/%u/gi, '\\u'); } , ToGB2312: function (str) { return unescap原创 2015-01-24 14:16:02 · 1872 阅读 · 0 评论 -
js insertBefore insertAfter appendChild
首先 从定义来理解 这两个方法:appendChild() 方法:可向节点的子节点列表的末尾添加新的子节点。语法:appendChild(newchild)insertBefore() 方法:可在已有的子节点前插入一个新的子节点。语法 :insertBefore(newchild,refchild)相同之处:插入子节点不同之处:实现原理方法不同。 appendChild转载 2015-02-25 11:29:48 · 698 阅读 · 0 评论 -
EasyTable.js,令html的table布局变得非常简单!
过年之前由于工作的需要,我花了一周的时间开发了一个纯js的网页插件,EasyTable.js。顾名思义,这个插件就是用来处理html里面的table的各种情况的。很多网站不喜欢使用table布局,因为table布局虽然排版能力强,但是改动能力差,一旦写死之后想要增删里面的数据都会变得非常麻烦。现在,这个插件将为你解决这个烦恼!原创 2015-02-25 08:37:25 · 5992 阅读 · 0 评论 -
通过实例理解javascript 的call()与apply()
先前使用javascript多是为了表单验证,最多是实现客户端的交互功能。基本不用call、apply之类的难懂方法。现在流行富客户端了。javascript也越来越对象化了。不得不学习一下!一、方法的定义call方法:语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]])定义:调用一个对象的一个方法,以另一个对象替换当前对象。说转载 2014-11-04 14:41:10 · 452 阅读 · 0 评论 -
EasyTable2.1 功能更加强大,bug全面修复的html table插件!
EasyTable2.0 js前端table布局与动态生成的插件,2.0新增了hook() table元素捕获和clone()table元素对象及属性克隆等功能,以及事件绑定、回调等。同时修复了1.0的所有bug,更全面地完善了语法。原创 2015-04-27 14:51:56 · 4215 阅读 · 0 评论 -
理解hasOwnProperty()的作用
hasOwnProperty:是用来判断一个对象是否有你给出名称的属性或对象。不过需要注意的是,此方法无法检查该对象的原型链中是否具有该属性,该属性必须是对象本身的一个成员。格式如下: Js代码 1. object.hasOwnProperty(proName); object.hasOwnProperty(proName); 判断proName的名称是不是ob转载 2015-05-01 11:13:22 · 2866 阅读 · 0 评论 -
性能更好的js动画实现方式——requestAnimationFrame
用js来实现动画,我们一般是借助setTimeout或setInterval这两个函数,css3动画出来后,我们又可以使用css3来实现动画了,而且性能和流畅度也得到了很大的提升。但是css3动画还是有不少局限性,比如不是所有属性都能参与动画、动画缓动效果太少、无法完全控制动画过程等等。所以有的时候我们还是不得不使用setTimeout或setInterval的方式来实现动画,可是setTimeo转载 2015-05-01 11:11:48 · 1399 阅读 · 0 评论