this指向的规则 1.默认绑定 默认绑定就是什么都匹配不到的情况下,非严格模式this绑定到全局对象window或者global,严格模式绑定到undefined; 2.隐式绑定 隐式绑定就是函数作为对象的属性,通过对象属性的方式调用,这个时候this绑定到对象; 3.显示绑定 显示绑定就是通过apply和call调用的方式; 4.new绑定 new绑定就是通过new操作符时将this绑定到当前…
var args = Array.prototype.slice.call(arguments); console.log.apply(null, args); 发现报错: TypeError: Illegal invocation This is expected because console.info expects its “this” reference to be console, n…
姓名正则 /^[\u4e00-\u9fa5]{1,6}(·[\u4e00-\u9fa5]{1,6}){0,2}$/ 匹配1到6个中文中间允许”·”+1到6个中文出现0到2次。主要为了考虑少数民族的名字 例如:买买提伊敏·伊敏诺夫 /^[\u4e00-\u9fa5]{1,6}(·[\u4e00-\u9fa5]{1,6}){0,2}([,,][\u4e00-\u9fa5]{1,6}(·[\u4e00…
如何区分js对象与JSON对象? 1.json中没有声明变量(json中没有变量的概念) 2.没有末尾的分号 json数组 [{“title”:”hello” },{ “title”:”mike” }] 解析JSON对象 eval()函数,解析json对象 较早版本可以使用shim 对象的2个方法: 接续与序列化 stringify():用于把js对象序列化为json字符串 pars…
播放器 重写video标签实现的本地自定义播放器。 播放器样式 进度条具体样式 语速具体样式 实现的功能 1.播放本地视频文件 2.拖动进度条进行播放 3.定点播放 4.切换播放语速 5.动态调整音量 没实现的功能 视频全屏,可以自行修改 体验 想体验一下?戳这里==> http://www.suanliutudousi.com/player/index.html…
player.currentTime =value //player为video元素,赋值一直赋不上 chrome浏览器中拖动进度条到新位置player.currentTime一直为0,刚开始我以为我的代码逻辑有问题,检测多遍后没发现问题。换了火狐浏览器可以拖动到新位置。 结果发现只需要设置video 的src地址为服务器地址即可。不能用本地地址。 拖动进度条到新位置的大致思路: 1.获取进度条点…
js将时间秒转换为时分秒的形式,00:00:00 要注意的点 9,10秒的时候一个要加0一个不加0 60秒的时候转换为00:01:00的形式 3600秒的时候转换为 01:00:00的形式 var time = 9, time2 = 10, time3 = 60, time4 = 3600; console.log(formatTime(time)); //00:00:09 console.lo…
案例一: 大致思路:该实现主要由onmousedown,onmousemove,onmouseup传统拖拽方式实现,兼容ie7+,主流浏览器 html代码 <!DOCTYPE html> <html> <head lang=”en”> <meta charset=”UTF-8″> <title></tit…
普通版 跨浏览器兼容拖动事件,兼容ie7.可以拖动文本在2个div框中来回拖动 html代码 你可以在2个div框中来回拖动 <div id=”wrap”> <div id=”sou” style=”width: 100px;height: 100px;margin-right: 40px;border: 1px solid black;float: left;”> <…
ie9以下 用事件委托来管理onchange事件不能触发onchange事件,其他浏览器正常 实现类似自动换焦点的功能 ,刚开始想用的是委托事件给form表单添加onchange事件但是ie9以下不能触发onchange事件。 原始代码 js部分 case “change”: target.value.length == target.maxLength ? target.parentNode.l…