js
文章平均质量分 69
timelessmemoryli
多思考,思想很重要。
做到最后其实会感受到技术没那么重要,只是工具。
思维和方法才是根本。博客应该不会再更新,只是以前过程的记录。
展开
-
正则表达式(一)
定义和使用var patt1 = new RegExp("hello"); var patt2 = /world/ ; test方法test() 方法检索字符串中的指定值。返回值是 true 或 false。var pat = /my/; var str = "this is my code..."; console.log(pat.test(str)); //原创 2015-11-13 17:02:11 · 367 阅读 · 0 评论 -
ajax跨域
1. 同源策略ajax之所以需要“跨域”,罪魁祸首就是浏览器的同源策略。即,一个页面的ajax只能获取这个页面相同源或者相同域的数据。如何叫“同源”或者“同域”呢?——协议、域名、端口号都必须相同。例如:http://google.com 和 https://google.com 不同,因为协议不同;http://localhost:8080 和 http://localhost:转载 2016-01-22 12:11:46 · 448 阅读 · 0 评论 -
轮播图
switch content .container { width: 700px; height: 300px; border: 1px solid #ccc; margin: 20px auto; position: relative;原创 2016-11-10 15:16:55 · 322 阅读 · 0 评论 -
js发布订阅实现双向数据绑定
Demo Page $(function() { //发布订阅原型 function PubSub() { //存储事件名与回调函数 var eventContainer = {}; //订阅 存储事件 this.subscribe = functio原创 2016-12-30 16:01:38 · 1125 阅读 · 0 评论 -
Canvas + jqueryRotate实现抽奖大转盘
canvas + jqueeryRotate .gameContainer .turn-plate { background-color: #FF9807; border-radius: 20rem; width: 40rem; height: 40rem; position:relative; margin: 0 auto; } .gameCo原创 2017-05-12 10:49:33 · 774 阅读 · 0 评论 -
ES6 export,import
import导入模块、export导出模块//全部导入import people from './example'//有一种特殊情况,即允许你将整个模块当作单一对象进行导入//该模块的所有导出都会作为对象的属性存在import * as example from "./example.js"console.log(example.name)console.log(example.转载 2017-07-06 10:00:28 · 284 阅读 · 0 评论 -
Java websocket + redis 实现多人单聊天室,多人多聊天室, 一对一聊天
多人,单聊天室版FEATURE多人聊天, 界面简洁美观, 使用ueditor支持发送文字,图片信息群聊成员列表, 登入登出公告存储聊天记录, 查看历史消息技术点使用CopyOnWriteMap存储websocketServer对象,线程安全redis存储消息记录ConcurrentLinkedQueue存储聊天成员TODO没有处理高并发,高并发情原创 2017-08-18 09:15:17 · 11073 阅读 · 14 评论 -
hover显示与隐藏气泡状二维码
Qrcode $(function() { $(".module span.flag").hover(function() { $("#qrcode").show(50); }, function() { $("#qrcode").hide(); }); }); /*突出显示气泡二维码*/ body {原创 2016-08-11 15:39:30 · 2404 阅读 · 0 评论 -
jquery-weui地区选择器改为时间季度选择器
city-picker.js更改后的代码// jshint ignore: start+function($){$.rawCitiesData = [];var quarters = ["第一季度", "第二季度", "第三季度", "第四季度"];var months = ["第一个月", "第二个月", "第三个月"];for(var i = 2014; i <= new D原创 2017-02-08 17:25:29 · 10262 阅读 · 1 评论 -
js仙剑六Tab选项卡
<!doctype html><html><head><meta charset="utf-8"><title>xj</title><style>body, div, ul, ol, li { margin: 0; padding: 0;}ol, ul { list-style2016-08-15 16:29:30 · 112 阅读 · 0 评论 -
图片上传 h5预览图片
<!doctype html><html><head><meta charset="utf-8"><title>测试页面</title></head><body><p>第一种:</p><inpu原创 2016-08-16 17:03:24 · 227 阅读 · 0 评论 -
js面试题
for (var i = 0; i < 3; i++) { setTimeout(function() { console.log(i); }, 0); console.log(i);} 结果是:0 1 2 3 3 3 很多公司面试都爱出这道题,此题考察的知识点还是蛮多的。 为了防止初学者栽在此问题上,此文稍微分析一下。 都考察了那些知识点呢? 异步、作用...原创 2016-09-29 08:44:19 · 91 阅读 · 0 评论 -
浏览器中使用js下载link图片而不是直接打开
function download(link) { var $a = $("<a></a>").attr("href", link).attr("download", ""); $a[0].click();}2017-04-17 16:05:47 · 2302 阅读 · 0 评论 -
js 发布订阅
var Event = (function() { var clientList = {}; var listen, trigger, remove; listen = function(key, fn) { if (!clientList[key]) { clientList[key] ...原创 2016-12-29 16:25:17 · 125 阅读 · 0 评论 -
javascript自适应宽度的瀑布流
实现思路:1、计算页面的宽度,计算出页面可放数据块的列数(如上图所示就有6列)。2、将各个数据块的高度尺寸记入数组中(需要等所有图片加载完成,否则无法知道图片的高度)。3、用绝对定位先将页面第一行填满,因为第一行的top位置都是一样的,然后用数组记录每一列的总高度。4、继续用绝对定位将其他数据块定位在最短的一列的位置之后然后更新该列的高度。5、当浏览器窗口大小改变时,重新执行一原创 2016-08-12 17:22:22 · 1152 阅读 · 0 评论 -
css进度条
进度条 $(function() { function longer() { var time = new Date(); var cur = time.getSeconds() == 0 ? 60 : time.getSeconds(); var val = parseInt(cur / 60 * 100); $('.progress').css('width'原创 2016-08-16 15:24:44 · 882 阅读 · 0 评论 -
正则表达式(二)
[abc] 查找方括号之间的任何字符。var str="Is this all there is?"; var patt1=/[a-h]/g; console.log(str.match(patt1)); [^abc] 查找任何不在方括号之间的字符。var str="hello jikexueyuan!"; var patt1=/[^jike]/g; conso原创 2015-11-16 16:03:08 · 471 阅读 · 0 评论 -
js导航条鼠标悬停上下文字滑动
js导航条鼠标悬停上下文字滑动 $(document).ready(function() { $("#menu2 li a").wrapInner( '' ); $("#menu2 li a").each(function() {原创 2015-11-17 10:43:02 · 1340 阅读 · 0 评论 -
js闭包
首先上一段理论,看不懂可以先不看,直接看例子。 以下几个概念: 执行环境 每调用一个函数时(执行函数时),系统会为该函数创建一个封闭的局部的运行环境,即该函数的执行环境。函数总是在自己的执行环境中执行,如读写局部变量、函数参数、运行内部逻辑。创建执行环境的过程包含了创建函数的作用域,函数也是在自己的作用域下执行的。从另一个角度说,每个函数执行环境都有一原创 2015-11-26 08:08:50 · 462 阅读 · 0 评论 -
js使用正则查找子串
var str = '#param1#abcdef#param2#hjklllj#param3#7878'var count = str.match(/param\d*/g)console.log(count) // ["param1", "param2", "param3"]原创 2015-12-17 10:38:07 · 2513 阅读 · 0 评论 -
js数组引用传递
1. var a = [1,2,3];var b = a;a = [4,5,6];alert(b); //[1,2,3]2. var a = [1,2,3];var b = a;a.pop();alert(b); //[1,2]著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。作者:Intopass链接:http://www.zhihu原创 2015-12-18 13:32:22 · 2078 阅读 · 0 评论 -
js setTimeout 延迟函数中的this
setTimeout的常见用法是让某个方法延迟执行。setTimeout方法是挂在window对象下的。《JavaScript高级程序设计》第二版中,写到:“超时调用的代码都是在全局作用域中执行的,因此函数中this的值在非严格模式下指向window对象,在严格模式下是undefined”。在这里,我们只讨论非严格模式。setTimeout接受两个参数,第一个是要执行的代码或函数,第二个是延迟原创 2016-01-08 10:54:57 · 1009 阅读 · 0 评论 -
js中 push pop shift unshift方法
push 在数组末端加入元素pop 在数组末端移除元素shift 在数组首部移除元素unshift 在数组首部加入元素结合使用可以实现stack以及队列queue的功能。原创 2015-12-25 15:47:54 · 1412 阅读 · 0 评论 -
js操作cookie
getCookie = function(name) { var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)"); if (arr = document.cookie.match(reg)) {原创 2016-04-21 18:54:49 · 287 阅读 · 0 评论 -
JS生成中文二维码
一、使用jquery-qrcode生成二维码先简单说一下jquery-qrcode,这个开源的三方库(可以从https://github.com/jeromeetienne/jquery-qrcode 获取),qrcode.js 是实现二维码数据计算的核心类,jquery.qrcode.js 是把它用jquery方式封装起来的,用它来实现图形渲染,其实就是画图(支持canvas和tab转载 2016-07-25 13:03:44 · 625 阅读 · 0 评论 -
关于js原型继承
博文地址:http://blog.jobbole.com/19795/一、函数创建过程在了解原型链之前我们先来看看一个函数在创建过程中做了哪些事情,举一个空函数的例子:JavaScriptfunction A() {};1functionA(){};当我们在代码里面声转载 2016-07-27 17:29:17 · 307 阅读 · 0 评论 -
js时钟代码
JavaScript Clock html, body { margin: 0; padding: 0; background: rgba(165,208,104,.75); } #clock { width: 200px; height: 200px; border-radius: 115px; border: 15px solid #原创 2016-08-08 14:09:38 · 749 阅读 · 0 评论 -
canvas的save与restore方法的作用
网上搜罗了一堆资料,最后总结一下。save:用来保存Canvas的状态。save之后,可以调用Canvas的平移、放缩、旋转、错切、裁剪等操作。 restore:用来恢复Canvas之前保存的状态。防止save后对Canvas执行的操作对后续的绘制有影响。对canvas中特定元素的旋转平移等操作实际上是对整个画布进行了操作,所以如果不对canvas进行save以及restore,那么每原创 2016-08-19 14:42:36 · 17966 阅读 · 0 评论 -
使用canvas绘制时钟
canvas * { padding: 0; margin: 0; } html, body { width: 100%; height: 100%; background-color: #DDFFF8;原创 2016-08-19 16:04:28 · 1253 阅读 · 0 评论 -
css+jquery步骤进度条
progressbar.progress-wrap { margin-top: 200px; padding: 0px; width: 100%; height: 100px;}.progress-wrap li { margin-top: 30px; list-style: none; float: left; width: 300px; height: 30px;原创 2016-08-16 12:28:46 · 4655 阅读 · 0 评论 -
websocket自动断开重连
监听close进行重连<!DOCTYPE HTML><html> <head> <title>WebSocket</title> <script src="jquery.min.js"></script> <script src="ws.js"></script&...原创 2019-08-27 12:23:44 · 9404 阅读 · 1 评论