摘要: 一.实现上的差异在IE中,XMLHttpRequest实现为一个ActiveX对象,其他主流浏览器一般实现为javascript本地对象二.状态值,长度值为4 的模型0,未初始化,对象已经建立,但未初始化还没有调用open方法1,初始化,调用open方法,但未调用send方法2,发送数据,send方法已经调用,但当前状态及http头未知3,数据传输中,已收到部分响应数据,但不完整4,完成,数据已经接收完毕三.gbk编码问题ajax默认是utf-8编码1,服务端转化成gbk后再响应,或将服务端的响应头设为content-type:text/html charset=gbk2.在FF下可以在前端用 阅读全文
posted @ 2011-05-15 16:08 toxot 阅读(1610) 评论(0) 推荐(1) 编辑
摘要: 官网http://jsoncpp.sourceforge.net/引用代码里面的“json.h”(1)解析json的方法Json::Value json; //表示一个json格式的对象Json::Reader reader; //json解析reader.parse(json_buf/*json格式的字符串*/,json,false); //解析出json放到json中(2) 数组访问Json::Value input 是类似这种格式[["key1":value1],["key2":value2] ]Json::Value::const_iterato 阅读全文
posted @ 2011-04-04 16:31 toxot 阅读(1908) 评论(0) 推荐(0) 编辑
摘要: 若是纯数组的形式则使用下面这种形式//javascriptvar array= new Array();for( var i=0;i<array.length;i++) array[i];//php$array = array();for($i=0;$i<count($array);$i++) $array[$i];遍历这个对象的所有属性//javascriptfor( var i in array) array[i]//phpforeach( $array as $key=>$value){ $array[$key] $value}foreach( $array as $v 阅读全文
posted @ 2011-03-21 12:44 toxot 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 1.静态加载 CSS,图片资源文件在页面渲染过程中可以并行下载,不会阻塞。在IE8,FF下,也可以支持JS的并行下载。尽管页面的JS下载加速了,但是JS对页面渲染的阻塞还是依然存在的,只有JS加载完毕了,页面的剩余部分才能继续渲染。放在Head部分的Script是最为恶劣的,因为对页面来说,Head部分是require的,是后部分所必须的,Head部分不加载完毕,Body部分不会开始解析,Body解析之前,页面是空白的。静态Script放到页面的哪部分来说都是阻塞,从浏览器实现的角度来说很好理解,因为JS代码中完全有可能修改页面元素影响Dom结构。因为浏览器对JS行为的不可预知,所以只好等前面 阅读全文
posted @ 2011-01-09 19:39 toxot 阅读(624) 评论(4) 推荐(2) 编辑
摘要: document.onkeydown=keydown;function keydown(event){ if ( !event ) event = window.event; var keycode = event.KeyCode | event.Which; alert(keycode);} 阅读全文
posted @ 2011-01-07 18:09 toxot 阅读(208) 评论(0) 推荐(0) 编辑
摘要: iframe id= "myframe" /iframeW3C的标准告诉我们,可以通过Dom对象的contentDocument属性来返回文档对象。即 doc= document.getElementById('myframe' ).contentDocument但对IE浏览器来说,经过测试,IE6,IE7都不支持,IE8开始支持了。在IE下,需要这样来访问document.frames['myframe'].document;跨浏览器的解决方案是,contentWindow属性,这是个只读属性,返回指定的iframe的窗口对象。它虽然不是标准的一部分,但各个主流浏览器都支持。所以跨浏 阅读全文
posted @ 2011-01-07 17:13 toxot 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 《读书笔记》重构-改善既有代码的设计 1. 关于重构 1.1 什么是重构? =》不改变外部可观察行为的前提下改善内部结构 1.2 什么时候重构? 1.添加功能时 2.修复Bug时 3.代码Review时 1.3 重构的好处 1.改善设计 2.增强可维护性 3.发现Bug 1.4 与性能的冲突 重构可能会有性能损耗,但它改善了设计使得软件的调整根据容易。 对性能上的问题可以用如下策略 1.时间预算法... 阅读全文
posted @ 2010-12-26 14:03 toxot 阅读(240) 评论(0) 推荐(1) 编辑
摘要: (一)获取Textarea的选中区域起点或无选中时的输入光标位置  非IE浏览器,如,firefox,chrome,支持selectionStart 获取选中区域的起点,而IE浏览器不支持该属性,需要间接通过TextRange来获得,利用TextRange对象的compareEndPoints方法来进行起点的比较可以实现。 getStartPos : function( textarea ){ if ( typeof textarea.selectionStart != 'undefined' ){ // 非IE start = textarea.selectionStart;} else{ 阅读全文
posted @ 2010-12-26 11:52 toxot 阅读(1778) 评论(1) 推荐(3) 编辑
摘要: 编译webkit需要依赖一些工具软件如bison,flex,sqllite,这些软件在fedora10的iso里都有. 由于我安装系统的时候都已经安装了,所以不需要重新安装。fedora10自带的Qt版本是qt-3.3,有点老。如果是用 WebKit-r29336来编,编译会有错。参考 http://xuyuanchao.ie.cnu.edu.cn/book/website/embedded/5... 阅读全文
posted @ 2010-10-26 23:07 toxot 阅读(667) 评论(0) 推荐(1) 编辑
摘要: (一)在IE下用getAttribute来获取class属性要使用getAttribute("className")。非IE,getAttribute("class")令,IE8下已经支持用getAttribute("class")来获取了 。(二)src=""在IE下会发出自动请求当前页面所在路径的请求。(三)如果页面是GBK,js是utf8引入js的时候 type="text/javascri... 阅读全文
posted @ 2010-09-28 11:03 toxot 阅读(1663) 评论(6) 推荐(1) 编辑