会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
XBOY2012
博客园
首页
新随笔
联系
订阅
管理
2019年3月22日
HTML加速
摘要: 关注点 + HTML首屏渲染是效率低的(low performance),阻塞的(blocking),串行的(serial),即使在现代浏览器的优化下,表现依然差强人意,延迟页面load事件的触发时机 + 页面ready之后对于资源的操作和控制是高效的,非阻塞性的,并行的,可编程性的 为什么HTML
阅读全文
posted @ 2019-03-22 11:36 XBOY2012
阅读(280)
评论(0)
推荐(0)
2014年1月16日
Javascript substr方法在某些浏览器下行为出现BUG的补丁代码
摘要: 主要思路是使用兼容性和稳定性都保持一致的substring方法重写/覆盖substr/** * String.substr() bug fix * @param start * @param len * @returns */String.prototype.substr = function(start, len) { var str = this; var l = str.length; if(start >= l) return ''; if(arguments.length == 1) { if(start >= 0 && start...
阅读全文
posted @ 2014-01-16 14:48 XBOY2012
阅读(474)
评论(0)
推荐(0)
2013年12月26日
JSONP安全防范解决方案新思路
摘要: jsonp安全性防范,分为以下几点:1、 防止callback参数意外截断js代码,特殊字符单引号双引号,换行符均存在风险2、 防止callback参数恶意添加标签(如script),造成XSS漏洞3、 防止跨域请求滥用,阻止非法站点恶意调用针对第三点,我们可以通过来源refer白名单匹配,以及cookieToken机制来限制而前两点,传统的做法分为以下几种:1、 纯手工过滤特殊字符,引号尖括号等,一旦发现潜在恶意字符则服务端拒绝,返回错误。此种方式较为严格,但是随之而来的问题是失败率会有所提升,尤其对于对外开发者。而且JS中恶意字符的变形十分多,此方式需要枚举所有非法字符,可能存在疏漏。我们
阅读全文
posted @ 2013-12-26 11:34 XBOY2012
阅读(850)
评论(0)
推荐(0)
2013年10月12日
浏览器兼容console对象的简要解决方案
摘要: 不同浏览器或者版本之间对于console对象的支持不尽相同,而console方法在开发调试过程中都是不错的工具。难道要在上线前把所有console.xxxx去掉以保证某些浏览器不报错么。其实可以变通解决。 浏览器报找不到console对象,那我们就手动构造一个接口完全一致的console对象 置于window中。这里采用了空方法和空对象。如此一来即使在很old的浏览器中,含有console.xxxxx的代码依然不会报错,完美运行。 下面附上修复兼容代码,要置于置于第一句console.xxxx调用之前,否则没有意义。
阅读全文
posted @ 2013-10-12 17:51 XBOY2012
阅读(288)
评论(0)
推荐(0)
2013年10月11日
PHP判断变量是否为长整形的方法
摘要: PHP判断变量是否为长整形的方法,可用于判断QQ号等,避免了int溢出的问题
阅读全文
posted @ 2013-10-11 16:36 XBOY2012
阅读(505)
评论(0)
推荐(0)
2012年11月28日
JQUERY 模糊选择器
摘要: 属性字头选择器(Attribute Contains Prefix Selector)jQuery 属性字头选择器的使用格式是jQuery(‘[attribute|=value]‘),例如jQuery(‘[herflang|=en]‘)这句代码执行时将会选择文档中所有含有 herflang 属性,并且 herflang 的值以 “en” 开头的元素,即使 “en” 后面紧跟着连字符 “-” 也能进行选择。属性开头选择器(Attribute Starts With Selector)jQuery(‘[attribute^=value]‘),用于选择属性的值以某个字符串开头的元素,但和jQuery
阅读全文
posted @ 2012-11-28 17:38 XBOY2012
阅读(434)
评论(3)
推荐(0)
2012年9月28日
让PHP<5.3版本支持get_called_class()方法
摘要: //PHP<5.3版本支持get_called_class()方法if (!function_exists('get_called_class')) { class class_tools { private static $i = 0; private static $fl = null; public static function get_called_class() { $bt = debug_backtrace(); //使用call_user_func或call_user_func_arra...
阅读全文
posted @ 2012-09-28 00:41 XBOY2012
阅读(601)
评论(0)
推荐(0)
Javascript 扩展Date对象,实现字符串与Date按指定格式字符串互转
摘要: Date.format = function(d, mask){ var zeroize = function (value, length) { if (!length) length = 2; value = String(value); for (var i = 0, zeros = ''; i < (length - value.length); i++) { zeros += '0'; } return zeros + value; }; return mask.replac...
阅读全文
posted @ 2012-09-28 00:29 XBOY2012
阅读(444)
评论(0)
推荐(0)
jQuery 时间获取扩展
摘要: 本段代码实现了同步和异步获取服务器时间的放式,真正做到不会侵入服务器代码。主要原理是读取响应头部的Date值,即为服务器返回响应的时间(由服务器端生成),故可以以字符串格式取出,并可以转换为Date对象,以便后续操作。对于获取服务器时间提供了同步和异步两种放式调用,可根据实际需要选择jQuery.extend({ //获取系统时间 getSystemTime: function(){ return new Date(); }, //异步获取服务器时间 getServerTime_async: function(success){ $.a...
阅读全文
posted @ 2012-09-28 00:17 XBOY2012
阅读(639)
评论(0)
推荐(1)
2012年9月26日
Javascript 实现前端资源预缓存
摘要: 当JavaScript代码需要操作文档时,涉及到一些资源的调度。如果可以在用户闲置未操作页面的时候能将可能用到的资源事先加载进来,那么需要调用时会得到很好的访问速度。下面代码实现了Javascript前端缓存资源。主要利用了Image类设置src属性时会触发一个请求url,从而缓存了资源。而且这一操作是异步的。资源文件(如图片)的缓存记载不会阻塞JS代码的继续运行。而是并行的。这一做法是参考了Google的一些JS代码实现的。//内容缓存管理器function XCache(){}//立刻缓存特定资源XCache.cache = function(p){ if(p instanceof ...
阅读全文
posted @ 2012-09-26 23:23 XBOY2012
阅读(1163)
评论(1)
推荐(0)
下一页
公告