存档

‘JavaScript’ 分类的存档

JS检测浏览器兼容性模式

2012年1月4日 没有评论

        function getIeCompatMode() {
            var engine = null;
            if (window.navigator.appName == “Microsoft Internet Explorer”) {
                if (document.documentMode) {
                    engine = document.documentMode;
                } else {
                    engine = 5;
                    if (document.compatMode) {
                        if (document.compatMode == “CSS1Compat”) {
                            engine = 7;
                        }
                    }
                }
            }
        }

结果是 5, 7, 8, 9 ,IE6的结果是7(这段代码是获取浏览器兼容性模式的,非判断浏览器)

分类: JavaScript 标签:

input file onchange 失效 第一次有效,之后失效

2012年1月4日 没有评论

对表单中<input type=”file” />增加onchange事件  比如 $(‘input’).change(function () {}); 

第一次选择文件,可以触发onchange,之后无论你怎么变换选择的文件,都不会再触发,网上搜了一下解决方案基本上为让这个 input type=file 只用第一次,第一次选择文件之后马上新建一个input type=file替换掉原来的

 

有个最简代码如下

<span id=”file_ct”><input id=”file_input” type=”file” onchange=”onFileChange()” /></span>

var onFileChange = function () {
    $(‘#file_input’).remove();
    $(‘#file_ct’).append(‘<input id=”file_input” type=”file” onchange=”onFileChange()” />’);
};

分类: JavaScript 标签: ,

js和php速度对比性能对比,js vs php

2012年1月4日 没有评论

今天突发奇想,想知道js到底有多“慢” 其实我并不认为js慢的 浏览器端的脚本也就js 那就和后台脚本对比吧,用最流行的php 浏览器是firefox 3.6

测试脚本

js

document.writeln(+new Date);
var j = 0;
for (var i = 0; i < 100000; i++) {
    //测试内容
}
document.writeln(+new Date);

php

$t1 = microtime(true);
$j = 0;
for ($i = 0; $i < 100000; $i++) {
    //测试内容
}
$t2 = microtime(true);
echo $t1, ‘ ‘, $t2;

 

1 赋值速度

测试内容为 j = 1; 和 $j = 1;

结果: js: 0.003秒 php 0.0447秒

2 加法 (123 + 123;)

结果 js: 0.002  php 0.0346

3乘法 (123 * 123;)

js 0.0025 php 0.0342

4 数组(var j = ['a', 'b'];  //    j[0]; j[1];    $j = array(‘a’, ‘b’);    $j[0];   $j[1];)

js 0.003  php 0.0527

5 关联数组

js 0.004 php 0.0476

6 实例化对象

js 0.06 php 0.148

7 常用函数

substr  js 0.028 php 0.133

split, explode  js 0.11 php 0.2216

8 函数调用

js 0.003 php 0.0783

 

js 速度完胜 php

分类: JavaScript 标签: ,

Ajax状态代码的说明

2012年1月4日 没有评论

今天在发布博客系统的时候,提交回复的ajax请求总是立刻失败,在我的开发机上好好的,翻出Extcore手册仔细码了一遍,找到了一个链接HTTP Status Code Definitions 这里是w3c给出的http状态代码说明。
我在ajax请求的失败响应函数中把状态代码alert出来,原来是500,服务器内部错误,还是我自己的疏忽啊,刚才更新框架的时候只上传了Db部分,其他部分也有改动的…把框架全部更新一遍ok了

分类: JavaScript 标签: