sshong发表于2013年5月8日 15:10:51 更新于2013年5月8日 15:13:05
js是单线程的,脚本和事件处理程序一时刻只能执行一个,没有并发的概念。

客户端(浏览器)js时间线,从同步顺序脚本执行,逐步转为异步事件驱动。

源自javascript权威指南,自己整理理解:

1、创建document对象,开始解析web页面。创建HTMLHtmlElement对象,添加到document中。
创建HTMLHeadElement添加到HTMLHtmlElement中等等,总之遇到不同的标签创建不同的element、node等等,这个阶段document.readyState = 'loading'。

2、遇到link外部css,创建线程加载,并继续解析文档。

3...
标签:无分类:JS&Html5阅读:4040评论:0阅读全文
sshong发表于2013年5月3日 19:12:45 更新于2013年5月3日 19:14:01
众所周知,css有几种方式定义,按照优先级从低到高分别是:
1、引用外部css文件,<link>方式。
2、直接写在html head中的css代码,<style>方式。
3、直接写在html元素的style属性中,<a style='color:red'>方式,也称为内联方式。
1、2的方式可以在html元素中设置属性id、class等,在css中可以根据id或者class进行选择。

在前端开发中,经常会用到js来操控css以达到某些动态效果。
通常,用得最多的就是通过js操控内联样式以及class属性。

1、js操控内联样式,即html元素的s...
标签:无分类:JS&Html5阅读:3030评论:0阅读全文
sshong发表于2013年4月25日 19:44:16 更新于2013年4月25日 19:44:59
js里的event跟flash的一样(actionscript也是ECMAScript,本是同根生),也有捕获阶段--目标阶段--冒泡阶段。
window --> document --> HTMLHtmlElement --> body --> 父element --> element --> 父element --> body --> HTMLHtmlElement --> document --> window
当然也不是所有事件都冒泡。

html里事件侦听的方式有3种:
1、在js里设置对象的属性为处理函数,
[cod...
标签:无分类:JS&Html5阅读:3178评论:0阅读全文
sshong发表于2013年4月24日 21:08:06 更新于2013年5月3日 19:15:10
最近从头学习javascript,自己写的一些练习源码用于加深理解,记录备查。

1、DOM相关

1.1 基础概念
htmltree
在一个html文档(树)中,所有的东西都是Node节点。Node是最基础的基类,有子类Document、Element、CharacterData(text、comment)。

其中Document代表一个html文档,是最顶层节点,js中可以用window.document(document)引用到。

html标签代表的是最顶层的元素eleme...
标签:无分类:JS&Html5阅读:3281评论:0阅读全文
sshong发表于2013年4月23日 14:02:19 更新于2013年4月23日 14:05:07
这两天在写一个缓存类,尝试用下大名鼎鼎的memcached。
结果一查php手册,有点懵,有一个memcache扩展和一个memcached扩展,再加上windows上不支持memcached扩展,网上一搜,说的乱七八糟,这里梳理澄清下。


首先:
1、memcached服务端:
memcached是一个开源的免费的高性能的分布式的内存级别的数据缓存系统,跟php不搭噶。
官方网址:memcached
也就是说memcached是一个服务器,提供了一系列接口给外部调用用于存储/取值等。

这些接口的调用者就是客户端,ph...
标签:缓存分类:PHP阅读:3892评论:0阅读全文
sshong发表于2013年4月13日 21:48:16 更新于2013年4月13日 22:20:03
推荐两篇文章,非常棒:
What Every Programmer Absolutely, Positively Needs To Know About Encodings And Character Sets To Work With Text
Handling Unicode Front To Back In A Web App

从字符编码是什么,到浏览器与后端(PHP)交互,从PHP到mysql交互讲的简单明...
标签:编码分类:PHP阅读:3951评论:0阅读全文
sshong发表于2013年4月11日 16:56:59 更新于2013年4月11日 17:02:36
前天update执行了条语句,忘了写where,导致整个表数据都废了,还好是dev环境,后来是人肉到qa环境的数据库去拷贝过来的的,吓出一身冷汗,这两天整理学写了下mysql的备份以及恢复的知识:

1、mysqlbinlog日志
mysqlbinlog首先要在my.ini中开启,如log-bin=mysql-bin,会在data目录下生成对应的如mysql-bin.000001、mysql-bin.000002等等文件,一般是每次重启mysql或者手动flush logs就会生成一个日志文件。
日志文件中记录了每一次对数据库有实质影响的操作,如insert、update等。每次操作都记...
标签:无分类:PHP阅读:3396评论:0阅读全文
sshong发表于2013年3月24日 11:42:37 更新于2013年3月24日 11:52:06
不仅仅是web,如今各种各样的细分技术里都有缓存这种东西,归根结底都是为了提高速度与节省资源,HTTP也不例外,这里简单记录下HTTP的缓存控制(这里仅简单的谈及浏览器缓存)。

欢迎探讨,有不对之处,还望指正。

HTTP有客户端(浏览器)发起请求、服务器端发送响应,因此,缓存也要从两方面谈起。
服务器端可以要求浏览器缓存还是不缓存,以及告诉一些缓存的额外信息。
浏览器可以听服务器端的缓存要求,也可以强制不听你丫的。

通常来说,缓存控制的主要部分由服务器端控制,毕竟浏览的内容是从服务器端出来的,服务器端清楚这份内容是否能缓存以及各种各要的额外信息。

一、服务器端(使用PHP验证):...
标签:缓存分类:PHP阅读:3799评论:0阅读全文
sshong发表于2013年3月20日 20:35:37 更新于2013年3月20日 22:09:57
所谓序列化,就是将1个变量转化为二进制或者字符串形式,进行存储或者传输。
反序列化,正好相反。

这里总结下最近用到的PHP里面的序列化、反序列化相关的知识。

1、serialize序列化 unserialize反序列化
php中提供了serialize函数用于将一个变量值序列化为字符串形式,
通过unserialize又可以将这个字符串反序列化为一个具体的变量值。
参考如下代码:
...
标签:无分类:PHP阅读:3959评论:0阅读全文
sshong发表于2013年3月17日 10:46:57 更新于2013年3月17日 10:52:11
今天小试了下PHP VLD扩展的安装。PHP的所有扩展可以到PECL(官网)上下载(你牛叉也可以发布扩展到这个网站),php扩展在windows下编译为dll放在ext目录,linux下编译为so。(PHP还有一种叫PEAR组件库类库网站,不要搞混了)

一般网上介绍的都是linux下的VLD安装,大致是下载源码,直接编译。但在windows下要用vs进行dll编译,有点小复杂。不过PHP官方提供了windows的PECL扩展网站,...
标签:VLD分类:PHP阅读:13318评论:2阅读全文
共210篇日志 第5/21页 下一页 上一页 尾页 首页
联系我
博客订阅