分类列表: 前端积累

动态绑定浏览器插件弹出窗口内容

3 条评论

最近在重构插件,把之前和现在遇到的问题都记录一下吧,抛砖引玉,不对的地方,欢迎指正,:)。 诉求起源 在编写的插件的时候,我们经常会出现仅允许在某些情况下才可以弹出插件窗口的需求,如:用户打开了非插件页面、书签页面甚至是其他的插件页面。 chrome允许我们在manifest指定browseraction和pageaction,但是假如我们直接在manifest文件中指定了这两个json字段的内容,那么弹出窗的内容将会被『锁死』。 阅读全文

Chrome runtime 不稳定(GC)导致插件绑定事件失败

留言

最近在重构插件,把之前和现在遇到的问题都记录一下吧,抛砖引玉,不对的地方,欢迎指正,:)。 问题表现 插件在加载后(安装、插件页面重载、插件内部runtime重载),进行初始化时,概率性绑定事件遇到错误阻塞执行或者阻碍后续逻辑执行。 TypeError: Cannot read property ‘onBeforeSendHeaders’ of undefined(…) 尤其是当你刷新调试页面时,提示报错页面由你的页面不停的变化成各种内部脚本等: extensions::guestViewEvents extensions::runtime 阅读全文

构建易于扩展的前端统计脚本

7 条评论

抛砖引玉,简单聊聊前端统计的方案。 场景 随着一个公司规模的扩大,业务越来越繁荣,公司对于数据的依赖也会越来越明显。随便拍脑门定产品策略和『意淫』用户需要的产品需求无异于浪费公司和团队的资源,所以产品或多或少都进行了一些数据上的统计,来验证方向是否正确。用前一阵流行的话可以这么讲:『大数据下用数据驱动的方式来做事情。』 阅读全文

加速Ghost静态资源

2 条评论

Ghost最近势头不错,连续几个月,基本每个月都是release 2个版本,不过也正是因为如此,ghost每次发布之后,API都会有些许变动。 故,不建议在官方merge任何i18N功能之前,使用中文版本,毕竟后台没几个英文,前台主题可以依赖自己的主题模板去实现i18N,没有使用影响。 下面分享一个简单修改的细节,可以使用七牛一类的CDN服务商无痛加速网站资源。 阅读全文

格式化UserAgent

留言

数据统计和降级实现基础之一,格式化UserAgent。 代码源自KISSY v1.4.x – seed.js 文件中的UA模块,并稍加修改。 阅读全文

天下武功,唯快不破

35 条评论

不知道从什么时候开始,不管是写独立博客,还是网络应用,甚至写托管博客的人都会朝着“大”网站看齐,去追求网站的响应速度,通俗点说,就是白屏时间,因为据各种报告说,网站打开速度更快一些,带来的用户体验就更好一些,从而带来更多的附加利益。但是对于用户来说,快,并不是简简单单请求数目尽可能少,和服务器吞吐能力尽可能大。那么,怎么快? 阅读全文

[JS]更靠谱一些的正则表达式验证URL

12 条评论

看草稿的时候,看到一段代码,想到之前被不知道谁随手抄来的正则坑的内牛满面… 下面是一段相对全面的用例测试,可以考虑使用,当然,如果你的要求很简单,用网上传的各种简单版,cover到自己的用例就好。 阅读全文

分类:JAVASCRIPT标签:, ,

[JS]console的简单替换函数

1 条评论

常常稍不注意就会发现IE低版本或者某个覆写了console的浏览器环境因为调用了console而功能出现了一些意外,或者收集了一堆console undefined的错误,推荐的做法不是对浏览器做shim,而是使用自建的函数去代替程序中使用的console。 对于开发过程中,我们需要设置日志输出的等级,去过滤不必要的信息,原生的console目测暂时还不支持这个功能。 还有诸如向指定服务器提交错误日志,以供后续优化和bugfix。 或者提供性能检查支持,估计还需要多添加一些其他的兼容的收集写法,以及常用的打时间戳功能。 代码很简单,没有几行,就不多说了。

分类:JAVASCRIPT

解决IE11开发工具无法切换文档模式的问题

5 条评论

这个问题比较简单,但是目测网上居然没有人写,记录下来,以免其他人也踩坑。 阅读全文

分类:WEB标签:

[JS]Math.random()随机数的二三事

7 条评论

[JS]Math.random()的二三事 看到题目,如果大家平时被问到:如何生成一个怎么样怎么样的整数随机数,估计大家都会不屑,但是当你淡定的回答获取一个范围应该是随机数seeds和区间数值差的乘机与最小数相加然后再怎么怎么的时候…有没有发现你的思维已经固化了呢。 这个知识点应该是玩JS肯定会碰到的之一吧。文末有Markdown,可以直接下载阅读,清爽一点。 阅读全文