Ruby's Louvre

The Crankiness of Belief achieves Great , not the Trick of Regulation.

置顶随笔 #

[置顶]我的第五代选择器Icarus

摘要: Icarus是我目前匹配精度最高(通过470个单元测试保证精度),速度最快(IE67下力压jQuery,其他浏览器都是使用querySelectorAll不分上下)的选择器,并且它全面支持CSS3的所有新增伪类,支持jQuery所有自定义伪类,并且支持对XML的查找,支持XML带命名空间的元素的查找(jQuery只能支持不带命名空间的,并且非常容易报错)。Icarus与jQuery1.7在slickspeed中的速度比赛结果(数值最大代表越慢): IcarusjQuery1.7比率 ...阅读全文

posted @ 2011-11-10 12:44 司徒正美 阅读(4858) 评论(15) 编辑

[置顶]目录

摘要: 不知不觉写了这么多东西,整理一下与己方便也与人方便。 完整的控件教程 颜色选择器 1 日历 1 日期选择器 1 富文本编辑器 1 2 3 4 5 表格排序 1 2 javascript相关的小研究心得 ...阅读全文

posted @ 2009-09-15 09:09 司徒正美 阅读(4238) 评论(9) 编辑

2012年2月6日 #

javascript 瀑布流

摘要: 现在图片网与商城流行一种叫“瀑布流”的布局,我们公司也不小心得了“流行性感冒”,要搞这个。于是我就写了一个,现在再用我的框架mass重写一下,发布出来,顺便宣传一下我的框架。瀑布流其实没什么东西,就是列布局与无限拖的结合。由于要支持IE6就没有CSS3,直接对列进行绝对定位。列就是一个DIV。然后就是列中每个板块的添加问题,我管它为砖头。每添加一块砖头前,比较一下哪列最短,就往哪里塞。最后就是无限拖,太easy了。加之,我的框架对样式,事件等设置非常简单,比jQuery更方便。下面就是源码,用到了并行加载技术,预设时加载了random,ready,css,event这几个模块,它们就会自行加载阅读全文

posted @ 2012-02-06 14:43 司徒正美 阅读(2660) 评论(8) 编辑

2012年2月5日 #

(转)HTML5 全屏 API

摘要: 注:提 HTML5 只是说明他是一项新的东西,至于浏览器的 JavaScript API 应不应是 HTML5 的一个配套?我们不纠结。不如看这个接口能给我带来什么,思考可以如何给网页做个体验上的增强应用吧。一、说在前面的其实只是一个新的 JavaScript API,让 HTML 元素可以实现全屏显示。不过,这已经足够让我们兴奋。具体是怎样呢?其实这个从 iOS 和 Safari 5.0 就已经可以用在 <video> 上。看一下这个,在 iPhone 上访问 youku 上的一个视频:我们可以点击中间这个大大的放映按钮,这里 iOS 里的 safari 会把影片全屏显示,使用的阅读全文

posted @ 2012-02-05 21:56 司徒正美 阅读(709) 评论(0) 编辑

(转)用CSS3移除点击交互元素的高亮背景

摘要: 我在移动设备上测试前面教程的图表实例时发现,当手指点击图表出现ToolTip时,图表容器的会出现一个半透明的高亮背景。设备浏览器不一样,颜色也不一样,很是影响交互效果。试了一下用Javascript来移除,花了一天时间也没弄出来,最后不得不Google了,又花了几个小时,终于用CSS3搞定了。代码如下:-webkit-tap-highlight-color: rgba(255, 255, 255, 0);-webkit-user-select: none;-moz-user-focus: none;-moz-user-select: none;新加了禁止选择文本的功能。其中,前二句对WebKi阅读全文

posted @ 2012-02-05 21:41 司徒正美 阅读(636) 评论(0) 编辑

新锐浏览器支持原生CustomEvent事件

摘要: 在safari5, firefox6, opera1.60, chrome10?支持CustomEvent事件。 document.addEventListener('ping', function(ev) { alert(ev.detail[0]); }, false); var evt = document.createEvent('CustomEvent'); evt.initCustomEvent('ping', false, f...阅读全文

posted @ 2012-02-05 13:24 司徒正美 阅读(758) 评论(0) 编辑

2012年2月3日 #

javascript题目,如何在重写alert后还能正常弹出alert

摘要: 今天在群里遇到一道很有意思的题目,大家发挥所能,给出的答案五花八门。特意整理成博文发表出来://原题目:window.alert = function(){};______;alert(1); 填空,使后面的alert(1)能正确弹出,至少列举两种不同思路。解法一,创建新的执行环境,使用iframe沙箱window.alert = function(){};window.alert=function(obj){ var iframe=document.createElement("iframe"); iframe.src="javascript:void(0);&阅读全文

posted @ 2012-02-03 09:21 司徒正美 阅读(3513) 评论(23) 编辑

2012年1月31日 #

mass Framework support模块 v2

摘要: 这是统一进行各种特征检测的模块。这些检测的值,如果存在对应DOM API并且其行为与大多数标准浏览器的行为一致为true,否则为false。false值越多说明该浏览器越落后,在我的测试列表中,FF9是做得最好的,全部为true,最差的不用说是哪个吧。就算是IE9也不尽人意,我还是需要为它做N多兼容代码。webkit系的也没有想象中的好。标准化之路任重道远啊。本版本的改进:发现boxModel,inlineBlock,keepSize,cssPercentedMargin这些特征必须等到domReady后才能检测,因此做了迟时处理。一些特征进行了改名,cloneAll更名为cloneNode,阅读全文

posted @ 2012-01-31 10:30 司徒正美 阅读(2053) 评论(0) 编辑

2012年1月30日 #

我的模块加载系统 v15

摘要: 本次改进是沿着上次的思路,让定义模块名尽量的短,然后只要保证请求时路径正确,那么它就会内部非常智能修正这个模块的名字,自动加上路径。至于这些模块叫什么名字,有什么属性,可以查看框架的系统属性@modules。尽管v14做得的改进非常人性化,但毕竟初次试水,还有许多不足与BUGs。v15就是在这方面进行了改良,原先模块名的修正逻辑是写define方法中,现在转移到一个叫innerDefine的方法中,并让其在临时生成的iframe沙箱环境中执行,确保没有改错。另外,v15,还对许多内部函数与私有属性进行更名,让其更加秀气易懂。下面是改进详情: 用于保存需要处理的模块名列表的内部数组 names 阅读全文

posted @ 2012-01-30 20:17 司徒正美 阅读(3486) 评论(1) 编辑

2012年1月21日 #

css3 变形

摘要: CSS3从IE滤镜偷窍过来的创意,但易用性明显提高了许多。利用这个,我们可以对某个元素进行旋传,缩放,倾斜与位移,并且区分元素类型,无论对块状元素还是内联元素都有效。rotate(旋转) rotate(angle) rotate3d(x ,y ,z ,angle) rotateX(angle) 单独设定 rX 轴的角度。 rotateY(angle) 单独设定 rY 轴的角度。 rotateZ(angle) 单独设定 rZ 轴的角度。 其中angle是指旋转角度,如果设置的值为正数表示顺时针旋转,如果设置的值为负数,则表示逆时针旋...阅读全文

posted @ 2012-01-21 12:54 司徒正美 阅读(2008) 评论(0) 编辑

2012年1月20日 #

Windows 上使用 Github

摘要: 安装使用 1.下载msysgit http://code.google.com/p/msysgit/ 2.下载tortoisegit客户端安装 http://code.google.com/p/tortoisegit/ 最新版TortoiseGit好像已经包含了Puttygen项目(用于生成SSH密钥的)如果自己没有github,则先到上面注册个帐号,然后搞个项目。这些都很简单,不详述。然后在window的开始菜单找到TortoiseGit,然后打开里面的Puttygen,点击生成按钮,最大的那个文本区就显示公钥,然后复制这些内容,打开Github中Account Setting页面里的SS.阅读全文

posted @ 2012-01-20 14:05 司徒正美 阅读(1979) 评论(0) 编辑

2012年1月18日 #

(转)透彻理解块级元素的宽度

摘要: 作者按:又翻出来一篇5年前(2006年12月28日)写的关于盒模型的文章,都不知道参考了哪本书了。只能凭印象感谢 Eric Meyer 的《CSS权威指南(第2版)》(The Definitive Guide, 2nd Edition)——因为当时作为练习刚翻译完这本书。 内容提要 透彻掌握CSS可视化模型的原理,可以让我们准确判断某个意外行为到底是因为CSS样式问题,还是CSS解析引擎问题。本文要讨论的要点是,当margin-left、width和margin-right这三个属性分别取auto值或大于0的值,进而形成不同组合的情况下,如何确定块级元素中各个组成部分的宽度。块级元素和行...阅读全文

posted @ 2012-01-18 13:25 司徒正美 阅读(2108) 评论(0) 编辑