分类:JS 发布时间:2022-11-07 10:34:59
按住 ctrl 触发 ``` function sdt() { document.querySelector('style').append(`canvas { position: fixed; left:0; top: 0; z-index: 9999; pointer-events: none; }`) document.body.appendChild(document.createElement('canvas')) const cvs = document.querySelector('canvas') const ctx = cvs.getContext('2d') cvs.width = document.documentElement.clientWidth cvs.height = document.documentElement.clientHeight const p = { x: 0, y: 0, r: 50 } document.onmousemove = e => { p.x = e.clientX p.y = e.clientY render() } const render = () => { ctx.beginPath() ctx.clearRect(0, 0, cvs.width, cvs.height) var radial = ctx.createRadialGradient(p.x, p.y, p.r, p.x, p.y, p.r * 3); radial.addColorStop(0, 'rgba(255, 255, 255, 0)'); radial.addColorStop(1, 'rgba(0, 0, 0, 0.5)'); ctx.fillStyle = radial; ctx.fillRect(0, 0, cvs.width, cvs.height); } render() window.onresize = () => { cvs.width = document.documentElement.clientWidth cvs.height = document.documentElement.clientHeight render() } } $(document).keydown(function(event){ if(!canvas_enable && event.keyCode == 17){ canvas_enable = true sdt() } }); $(document).keyup(function(event){ if(event.keyCode == 17){ canvas_enable = false $("canvas").remove(); } }); let canvas_enable = false ```
分类:JS 发布时间:2018-11-20 10:05:00
当我们在需要复制数组,习惯直接用等于号。但在js中有一个问题,数组是复合的数据类型,直接 =,只是复制了指向底层数据结构的指针,而不是克隆一个全新的数组。 - 错误的例子 ``` var brr; arr = [1,2,3,4,5]; brr = arr; ``` - 正确的例子 ``` var brr; arr = [1,2,3,4,5]; brr = arr.concat(); ```
分类:JS 发布时间:2018-03-09 18:40:00
1、简单JSON实例 ``` $.ajax({ type: 'get', //可选值 get,post url: 'www.zlhvc.com', dataType: 'json', // 可选值 xml,html,json,jsonp,text success: function (data) { data = eval(data); //不是必须,看返回格式 } }); ``` 2、简单跨域解决方案 jsonp ``` $.ajax({ type: 'get', //可选值 get,post url: 'a.zlhvc.com', dataType: 'jsonp', jsonp: "callback", // jsonpCallback: "callback11", //可自定义返回名称 success: function (data) { data = eval(data); //不是必须,看返回格式 } }); ``` 全部参数请自行搜索查阅资料: (例如:)<a href="http://www.w3school.com.cn/jquery/ajax_ajax.asp">ajax() 方法</a>
分类:JS 发布时间:2017-10-24 17:11:00
很少在 js 上面写正则,所以有的问题会没有注意到 比如 JS 上面正则是不能用 双引号包起来的! 正确的正则表达式 ``` var path = /^1[3|5][0-9]\d{4,8}$/; ``` 错误的写法 ``` var path = "/^1[3|5][0-9]\d{4,8}$/"; ```
分类:JS 发布时间:2017-09-14 01:59:00
JQ动态加载数据的点击事件, 1、on 方法 要求JQ版本 1.7以上 2、动态绑定时候 #list 不能是动态生成的 ``` <div id="list"><img src=""></div> ``` ``` $("#list").on('click','img',function(data){ alert('111'); }); ```
分类:JS 发布时间:2017-05-04 16:26:00
javascript中的setInterval的函数主要是在制作动画或其他间隔性渲染(操作)效果时,对操作方法按照一定时间间隔进行调用的函数。 - 普通语法的第一种写法 ``` setInterval(function(){ console.log('1'); },1000) //每隔1秒打印一次 ``` - 普通语法的第二种写法 ``` function alert1(){ alert("我是setInterval方法打印结果") } function alert2(str){ alert(str); } setInterval(alert1,3000); setInterval("alert1()",3000); setInterval(alert2,3000,"我是setInterval方法打印结果"); setInterval("alert1()",3000,"我是setInterval方法打印结果"); ``` - 对象方法写法 ``` obj = new Object();//创建一个新的对象 obj.alert1 = function(){ alert("我是setInterval方法打印结果"); } obj.alert2 = function(str){ alert(str); } setInterval(obj,alert1,3000); setInterval(obj,alert2,3000,"我是setInterval方法打印结果"); ``` setInterval一般都要跟clearInterval配合使用,clearInterval的作用是清除setInterval方法的调用,clearInterval的参数是setInterval的返回值, ``` var timer = setInterval(obj,alert1,3000); clearInterval(timer); ```
搜索
文章分类
最新文章