用原生HTML5控件实现输入框自动提示(下拉列表补全)功能 本文介绍如何使用HTML5的输入列表属性和datalist元素,你可以轻松地设置了一个自动提示的输入框,不需要依赖jQuery或JavaScript。
实现非常简单,添加 list 属性到input字段,然后创建一个datalist元素。 id值与list属性对应即可。
Session劫持与Session-ID的安全长度 Session劫持从Web Session控制机制处发动攻击,通常是对Session令牌管理的剥夺。
因为HTTP通信使用许多不同的TCP连接,Web服务器需要一个方法来识别每个用户的连接。最有用的方法是当一个客户端成功认证后,该Web服务器向该客户端浏览器发送令牌。Session令牌通常由可变长度的字符串组成,并且它可以以不同的方式存储,如在URL中,在HTTP请求的cookie报头中(request header),或在HTTP请求中的其它报头,或者在HTTP请求的主体中。
Session劫持攻击通过窃取或预测有效的Session令牌来获得未经授权Web服务器访问权限。
CSS Sprite小图片自动合并工具(NodeJS,Python,Java,Ruby) css-sprite是将css样式中零星的小图标,小图片合并成大图显示,这样能减小服务器并发连接数,减小服务器负载和带宽使用,有很高的实用价值。这里介绍一些自动合并图片并生成样式的工具。
css-sprite是一个基于NodeJS实现的css切图自动合并工具,能自动将小图片合成大图,支持retina sprites和base64输出格式。
SmartSprites是基于Java实现的CSS切图自动合并工具,你只需要在CSS样式文件中添加一些注释即可使用;
Glue是基于Python实现的一个CSS Sprites切图自动生成工具。它生成的CSS小图标所对应的样式名以目录名+文件名组织: 如.sprite-icons-zoom_out,
让我们写快速的JavaScript,JS性能优化小窍门
不过,说实话,即使它这么疯狂流行,它的性能还没有达到它的极限。是的,它在改进,但是等到它在各个方面赶上本地应用之前,在做一个HYBIRD混合应用时,你还不得不使用一些伎俩来优化它的性能。
通过Web Audio API可视化输出MP3音乐频率波形 Web Audio API(网络音频API)过去几年中已经改进很多,通过网页播放声音和音乐已经成为了可能。但这还不够,不同浏览器的行为方式还有不同。但至少已经实现了.在这篇文章中,我们将通过DOM和Web Audio API创建一个可视化音频的例子。 注* 形状会波形而变化.
用页面可见性(Page Visibility)API创建用户体验良好的网站 我们都有过这样的经验:启动浏览器后,会重新加载所有的tab页,声音和视频混合嘈杂。虽然你可以很容易对这方面进行控制,像MuteTab等,对于大多数人来说这是一种令人失望的用户体验。作为开发人员和设计师,我们应该让页面更加友好,而不能喧宾夺主。
从一行CSS调试代码中学到的JavaScript知识 现在到处都是JavaScript,每天都能知道点新东西。一旦你入了门,你总能从这里或是那里领悟到很多知识。
一旦我发现一些有意思的东西,我喜欢去感觉他们的源代码,看一看它是怎么办到的。
今天我想分享Addy Osmani的一行代码 ,这行代码对于你调试你的CSS是很有用的。为了可读性,我把它变成了3行。
[].forEach.call($$("*"),function(a){
a.style.outline="1px solid #"+(~~(Math.random()*(1<<24))).toString(16)
})
在Debian(Raspberry Pi)树莓派上安装NodeJS 在树莓派上运行NodeJS并不需要特别的配置,你只需要确保可以用openssh远程连接到你的树莓派。并不是所有最新版的NodeJS都能在树莓派上使用。因为有些没有正确地指定ARM的指令集。
注* 树莓派使用的是ARM v6指令集的CPU,但Chriumun V8最版JavaScript引擎,可能使用了一些ARM v7的功能,比如内存保护等。
Node.js安全教程:防止阻塞Event Loop的潜在攻击 我们的node.js服务器会偶尔挂一段时间(几秒钟),为什么会这样?
那么,为什
么会这样呢?简单的回答是,我们的代码时不时地阻塞了node.js的事件循环(Event Loop)。你可能已经知道了node.js ——
像浏览器中的JavaScript一样 ——
是单线程的。是由一个事件循环驱动的。一次只会处理一件事件。并行处理在这里是不存在的。所以node.js很善于处理I/O密集型的工作。因为在处理
一个请求时,大部分时间是花在I/O等待上面了。(从磁盘上读取数据,从网络收发数据),但是它并不善长处理CPU密集型的工作。
5个现在就该使用的数组Array方法: indexOf/filter/forEach/map/reduce详解 ECMAScript5标准发布于2009年12月3日,它带来了一些新的,改善现有的Array数组操作的方法。然而,这些新奇的数组方法并没有真正流行起来的,因为当时市场上缺乏支持ES5的浏览器。
但是,时代在变化。如果你看看Github上流行的开源JS项目,你会发现趋势正在转变。大家都想削减大量(第三方库)的依赖,仅用本地代码来实现。