关于鼠标事件的screenY,pageY,clientY,layerY,offsetY属性 (详细图解)
screenY鼠标相对于显示器屏幕左上角的偏移pageY鼠标相对于页面左上角的偏移 (其值不会受滚动条的影响)IE9之下并不支持这个属性但是可以写点代码计算出来。 jQuery中的实现://CalculatepageX/YifmissingandclientX/Yavailable
if(event.pageX==nulloriginal.clientX!=null){
eventDoc=ev...
通过javascript判断浏览器类型
javascript代码:functiongetOs(){
varOsObject=;
if(navigator.userAgent.indexOf(MSIE)0){
returnMSIE;
}
if(isFirefox=navigator.userAgent.indexOf(Firefox)0){
returnFirefox;
}
if(isSafari=navigator.us...
JavaScript的隐式类型转换浅析
JavaScript的数据类型分为六种,分别为null,undefined,boolean,string,number,object。object是引用类型,其它的五种是基本类型或者是原始类型。我们可以用typeof方法打印来某个是属于哪个类型的。不同类型的变量比较要先转类型,叫做类型转换,类型转换也叫隐式转换。隐式转换通常发生在运算符加减乘除,等于,还有小于,大于等。。typeof11//str...
JavaScript人脸检测的实现方法
今天,我们开始学习tracking.js,它是一个由Eduardo Lundgren开发的轻量级的javascript库,它可以让你做实时的人脸检测,色彩追踪和标记好友的脸。在这个教程中,我们将会看到,我们如何从静态图片中检测脸,眼睛和嘴巴。我一直对视频和图片中的人脸标记、检测和人脸识别技术很感兴趣。尽管我知道获取逻辑和算法去开发人脸识别软件或者插件已经超出了我的想象。当我知道Javascript...
编写更加稳定、可读性强的JavaScript代码
每个人都有自己的编程风格,也无可避免的要去感受别人的编程风格——修改别人的代码。”修改别人的代码”对于我们来说的一件很痛苦的事情。因为有些代码并不是那么容易阅读、可维护的,让另一个人来修改别人的代码,或许最终只会修改一个变量,调整一个函数的调用时机,却需要花上1个小时甚至更多的时间来阅读、缕清别人的代码。本文一步步带你重构一段获取位置的”组件”——提升你的javascript代码的可读性和稳定性。...
编写更加稳定/可读的javascript代码
每个人都有自己的编程风格,也无可避免的要去感受别人的编程风格——修改别人的代码。修改别人的代码对于我们来说的一件很痛苦的事情。因为有些代码并不是那么容易阅读、可维护的,让另一个人来修改别人的代码,或许最终只会修改一个变量,调整一个函数的调用时机,却需要花上1个小时甚至更多的时间来阅读、缕清别人的代码。本文一步步带你重构一段获取位置的组件——提升你的javascript代码的可读性和稳定性。本文内容...
通过Web AudioAPI可视化输出MP3音乐频率波形
Audio 组件首先我们需要创建一个audio组件,通过预加载(preloading)和流式(streaming)播放时时处理.创建Audio上下文ContextAudioContext是Web Audio API的基石,我们将创建一个全局的AudioContext对象,然后用它线性处理字节流./*创建一个AudioContext*/
varcontext;
/*尝试初始化一个新的AudioC...