随笔分类 -  Javascript

摘要:今天写一个十分简单的页面,要获取页面中某一DOM,用了如下的写法: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"> <... 阅读全文
posted @ 2011-04-24 23:42 meteoric_cry 阅读(63476) 评论(1) 推荐(0) 编辑
摘要:昨晚在微博上看到有人问这个问题,小试了一下,我得到的情况如下(代码运行环境是32位的windows sp3): IE8:Math.pow(2, 32) – 1 => 4294967295 Chrome dev 11.0、FF4、Safari 5 则为:Math.pow(2, 31) – 1 => 2147483647 Opera 接近于无穷大,也就是:Infinity - 1 (未证实) 基于这... 阅读全文
posted @ 2011-04-01 15:35 meteoric_cry 阅读(2970) 评论(1) 推荐(0) 编辑
摘要:此题是看到51js论坛上有人提出这个问题:求解arguments对象的内部实现原理 真正不在于提的问题本身,而在于不同的浏览器对它的实现并不完全一致。直接上代码了: 1: function chrome_bug(a, b) { 2: arguments[1] = 2; 3: alert(b); // Chrome:2, other:undefined 4: } 5: 6: chrome_bug(1... 阅读全文
posted @ 2011-03-30 01:18 meteoric_cry 阅读(514) 评论(0) 推荐(0) 编辑
摘要:假设有字符串“朱元璋”,截取限定的长度为7字节 截取编码为utf-8 结果为“朱” 截取编码为gb2312时 结果为“朱” 字符串为“hello朱元璋”,截取限定的长度为13字节 截取编码为utf-8 结果为“hello朱元” 这里的问题就是gbk编码占位2个字节,而utf-8占位3个字节,完整的示例代码: 1: 2: 3: 4: 5: new document 6: 7: 8: 9: 10: 11: 12: 13: 14: 58: 59: 这里从len/2开始试... 阅读全文
posted @ 2011-03-21 23:34 meteoric_cry 阅读(601) 评论(0) 推荐(0) 编辑
摘要:这道题目是从51js论坛上看到的,链接在这里>> 题目大意是: 从1到10w(共10w个数)中随机抽走2个数,然后打乱剩下的数的顺序,问如果从这剩下的数中快速的找出抽走的是哪2个数? 我想这道题目其实还有限制(印象中好像以前见过,忘记在哪了…),例如: 1、控制变量的个数使用(最多不允许超过5个) 2、不允许使用数组变量 3、不允许改变数组的值 出这种题目,一般来讲是让答题者只使用一次循环,时间复杂度控制在O(n),空间复杂度O(1)。 说明:下文中所指的原数组是指,未被打乱顺序、未被截取的数组 现在的数组,指被抽走2个数且顺序被随机打乱了的数组。 数组的下标从0开始,这里 阅读全文
posted @ 2011-03-16 14:21 meteoric_cry 阅读(2224) 评论(2) 推荐(0) 编辑
摘要:主要还是参考google的官方文档: How to Download and Build V8 Building on Windows 同时也参考了一些其它的中文博客: 脚本引擎小pk:SpiderMonkey vs V8 Windows 下编译V8引擎-with visual sudio 2010 将google V8 编译成 dll v8学习笔记 步骤基本上可以完成按照官方的操作来处理,这里记录编译中遇到的问题(编译环境 xp sp3、vs2005、python 2.6、scons 2.0): 1、从svn上已经无法下载源码了(也许是我当地的网络问题,点此直接进行下载>>) 2 阅读全文
posted @ 2011-03-14 10:44 meteoric_cry 阅读(6541) 评论(1) 推荐(0) 编辑
摘要:晚上和老同事谈及QQ空间头像修改后,页面上其它地方的图像也立马修改过来了。看了一下,说了我的想法(因为以前这样做过): 假设请求地址为 http://abc.com/a.gif 1、在flash设置完成头像后,在地址后面带个随机数,例如:http://abc.com/a.gif?k=xxxxx 将页面中所有能看到之前图像的位置设置为这个地址; 2、用ajax设置头部不缓存后,请求http://ab... 阅读全文
posted @ 2011-03-11 00:31 meteoric_cry 阅读(1753) 评论(0) 推荐(0) 编辑
摘要:题目是由Winter出的,出片在这里>> Winter出的题,有些我也答不上来,题目难度并不是很高,但还考的比较深入。例如: JavaScript中的科里化、尾递归及其优化等(因为工作中用到这些的地方并不多) 之前我也整理过,叫《网上收集的十道题》,那些题目,如果只是日常的页面开发,有些也许不会遇到,但如果想深入JavaScript,去研究一下也未尝不是一件好事情。 我所了解的招聘前台开发人... 阅读全文
posted @ 2011-03-10 21:42 meteoric_cry 阅读(515) 评论(0) 推荐(0) 编辑
摘要:一道算法题,以前51js上讨论过。思路就是自己实现乘法运算,如果用递归,如果求1000的阶乘就要出现脚本失控了 51JS上最为经典的方法: 1: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2: <html xmlns="http://www.w3.org/1999/xhtml"> 3: <head> 阅读全文
posted @ 2011-03-10 00:37 meteoric_cry 阅读(1407) 评论(0) 推荐(0) 编辑
摘要:假设有这样一种需求:后台提取日志(日志是用户使用自己开发的编辑器编写的),在前台需要显示它的摘要。 比较实际的例子就是QZONE新版本首页的摘要,后台提取数据,前台显示摘要,那就继续折腾了~ 对于提取摘要,要确定以下几点: 1、以什么为依据提取字符串,字符串的长度还是其它 2、对图片、音频、视频、flash如何处理 假设以br作为分隔,最多取4行摘要,超出的部分显示 “...” 最终的效果如下图,左侧为完整的文章,右侧显示的摘要或是示例效果(假设最多显示十行): 编辑器是自行开发的,以br作为一行来看,需要实现的功能: 1、最多取出10行数据 2、取出的字符串,图片不能超过100张... 阅读全文
posted @ 2011-03-10 00:29 meteoric_cry 阅读(7788) 评论(0) 推荐(0) 编辑
摘要:在微博上看到有人提及不使用定时器实现iframe自适应(onReadyStateChange + onLoad + onResize + onDOMSubtreeModified),然后就去折腾了,这篇与之前的文章:《不使用定时器实现onhashchange》有点类似 /*****此方法暂时只支持同域下,跨域的问题有待解决****/ 以往要使iframe的高度自适应,往往用定时器在跑,这个方法... 阅读全文
posted @ 2011-03-09 01:48 meteoric_cry 阅读(1726) 评论(0) 推荐(0) 编辑
摘要:网上看到有人也说是他遇到的一道笔试题,那我想这道题目其实还考过很多人。只不过当时是给我笔让我写出来,一下子懵住了,没缓过神来。写的算法时间复杂度为O(n*m),而出题的要求是时间复杂度控制在O(n+m),而且内存和CPU要控制的很小。 已经快一年了,只记得题目的大意是:两个很多的字符串A、B(全部小写字母),请找出A中有,而B中没有的? 如果是用纸写出来,我想思考后也能写出来,而如果只是说(... 阅读全文
posted @ 2011-03-02 10:48 meteoric_cry 阅读(567) 评论(0) 推荐(0) 编辑
摘要:之前看sparks345 写的《不采用interval方式模仿onHashChange》 后来自己又折腾了一把,完整的源码总共大小是1.66KB(2K不到) 支持:FF3.0+、IE6+、Chrome 主流的浏览器(IE6、IE7除外),基本上都支持onhashchange事件,而IE8也将支持。只有IE6、IE7不支持,而使用这两个浏览器的用户还是占有很大的一部分份额。 网上流传的实现o... 阅读全文
posted @ 2011-01-11 19:01 meteoric_cry 阅读(5979) 评论(6) 推荐(2) 编辑
摘要:Speed Tracer由google开发的一款测试网页性能分析插件而且开源 (IE下推荐dynaTrace),包含:IE中推荐使用dynaTrace这里是百度文库关于dynaTrace ajax的教程http://wenku.baidu.com/view/565afd1cc281e53a5802ff08.html一个小视频地址:http://ajax.dynatrace.com/pages/... 阅读全文
posted @ 2010-12-14 11:47 meteoric_cry 阅读(13300) 评论(0) 推荐(3) 编辑
摘要:一般点击打开新窗口,有几种方式: 1、超链接a 有href属性、target为_blank 2、iframe,其target为_blank 3、window.open<可能会被拦截,看用户的浏览器安全设置> 4、form表单提交,同样target也必须设为_blank 现在遇到一个需求: 做了一个后台运维管理系统<前台页面基于Extjs进行开发>,在点击datagrid头部一个按钮,需要打开一个新窗口 因为extjs运行效率比较低,所以选择使用chrome访问系统,而在操作些按钮的时候发现很多很奇特的现象,这些现象只出现在chrome中: 1、打开一个窗口后,些窗... 阅读全文
posted @ 2010-12-11 17:31 meteoric_cry 阅读(8061) 评论(0) 推荐(0) 编辑
摘要:jQuery中有很好用的trigger来触发事件,但总不能写什么都去引入jQuery吧   一个简单的需求,实现类似IE下的fireEvent效果<要兼容其它主流浏览器>   关于这二个方法,没记得起来,然后就google了一把: IE下: createEventObject Method   语法: 例子: msdn地址:ht... 阅读全文
posted @ 2010-12-02 17:20 meteoric_cry 阅读(1860) 评论(0) 推荐(1) 编辑
摘要:先罗列一些预加载JavaScript和CSS的方法(欢迎补充): 1、动态创建节点 2、使用ajax请求 3、使用iframe 4、借用flash去请求资源 5、new Image().src = ‘xxx’;   好吧,一个方案一个方案来分析一下(要求是不允许执行Javascript和应用CSS,以免消耗系统资源):   1、支持跨域,但请求后脚本会执行、样... 阅读全文
posted @ 2010-10-23 18:21 meteoric_cry 阅读(1619) 评论(1) 推荐(1) 编辑
摘要:  可自定义动画执行时长、动画执行频率、动画的类型。   运行示例代码: 动画组件 时长(毫秒): FPS: 动画类型: 运动轨迹: 预览代码   动画组件的核心代码:  再来一个例子,可以记录动画播放的历史动作:动画测试 开建执行动画 暂停 继续播放 重新播放 当前动画的执行的百分比: 预览代码  ... 阅读全文
posted @ 2010-10-14 14:09 meteoric_cry 阅读(1305) 评论(1) 推荐(1) 编辑
摘要:SNS类或是微博类的产品一般都有一个功能:插入表情,如下所示:   重点:兼容IE与其它主流的浏览器,根据上一次选择的选区范围进行操作。 自己写了一个TextRange(参考了网上的一些例子和代码)  先写个例子测试一下TextRange里面的方法: 博客园插入代码好像有问题,复制到本地运行测试一下就行了 :) 下面就是插入表情的示例代码了: 阅读全文
posted @ 2010-10-14 14:01 meteoric_cry 阅读(950) 评论(2) 推荐(0) 编辑
摘要:参数资料: msdn.microsoft.com/en-us/library/ms536452(VS.85).aspx www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113/ranges.html#Level2-Range-setStartBefore https://developer.mozilla.org/en/DOM/... 阅读全文
posted @ 2010-10-14 11:59 meteoric_cry 阅读(6429) 评论(1) 推荐(1) 编辑