Mootools 1.2教程(9)——输入过滤第二部分(字符串)

原文地址:30 Days of Mootools 1.2 Tutorials – Day 9 – Input Filtering Part II (Strings)

输入过滤第二部分(字符串)

请尊重个人劳动,转载请注明出处:http://fdream.net, 译者:Fdream

字符串函数

如果你还没有准备好开始这一讲,请参考这一系列的教程,这里是《MooTools 1.2系列教程目录》

今天我们来看一看MooTools给我们提供的额外的一些处理字符函数。这只是MooTools字符串处理中的一部分,并不包含一些神秘的函数(比如toCamelCase())和使用正则表达式处理字符串的函数。我们会在以后另外用一讲来将一下正则表达式的基本知识和在MooTools下的使用。

在开始之前,我想先花一点时间来看一下字符串函数是怎么调用的。在我的例子中,我是在字符串变量上面直接调用这个方法的,就像下面的这样:

var my_text_variable

浏览器对Cookie的限制

中午写上一篇日志的时候翻到这篇文章的,不过因为要上班,没来得及翻译,现在翻译一下贴在这里,供大家参考。

======我是无辜的分割线=====

原文地址:Browser cookie restrictions

我一直在为我接下来的一本书做一些关于cookie的研究,在这个过程中我碰到了一些关于浏览器处理cookie的有意思的事情。我从寻找浏览器允许每个域保存的cookie个数开始。这个结果很有趣:

  • 微软表示,Internet Explorer 8增加了每个域可以保存的cookie个数至50个,不过我发现IE7也允许每个域保存50个cookie。当然,这可能是因为一个系统补丁增加的,而不是这个浏览器版本一开始就是这样,但是仍然超过了通常认为是20个的限制。
  • Firefox允许每个域保存50个cookie。
  • Opera允许每个域保存50个cookie。
  • Safari/WebKit是这其中最有趣的,因为它似乎没有明显的限制,一直到Safari

在JavaScript应用中使用Flash来存储本地数据

最近在Google Reader里面看到的,一日本人在blog上提出来的,他还有一个示例页面,这里是Demo下载地址。不过在看到这篇文章之前,我就已经在我们的项目(PPLive iKan 1.0)中用过了,其中的观看历史记录就是使用的Flash来进行存取的。

其实Flash在JavaScript应用程序中当“幕后英雄”的例子早就有过了,最先是为了解决用JavaScript复制文本的问题,用Flash这可以轻而易举地解决跨浏览器问题。我之所以想到用Flash来存储观看记录是因为我觉得用Flash来保存更有优势:

  • 存储方式可靠

JavaScript中存储本地数据的常见方式是使用Cookie,还一种方式是使用UserData。写Cookie的方式也很可靠,读写都非常的容易,但是UserData有时候却不是那么可靠,不知道为什么有时候清理Cookie都会带来莫名奇妙的问题,造成UserData无法写入或者无法读取的情况,很诡异。…

QQ邮箱的Web QQ聊天

昨天开QQ邮箱的时候,发现联系人旁边多了个小图:

点开一看,还真是个Web QQ:

展开,鼠标移上去可以看到联系人信息:

找个人聊天试试,自己用另外一个号登陆了,版本是QQ 2009 Preview 3,打开一看,发现提示不支持,囧:

再找个人,发现也不支持,看来那人也用的是QQ 2009,不过她是隐身的,居然提示不支持,直接暴露了隐身状态,再囧:

好了,总算找到个人,没有提示不支持,发消息,居然弹出个提示,要求输入验证码,请允许我再囧一次:

还好,输入验证码以后就可以正常聊天了,返回的消息没有发到我的QQ客户端上,很好:

不聊的时候可以收起来,成这样:

有消息来的时候会有消息提示音,这个地方会闪烁,浏览器的标题栏也会闪烁:

不过这个Web版的QQ支持IE浏览器和Firefox,不支持Chrome……看了一下,基本上是每隔15秒向服务器轮询一次消息。…

给本本装上了内置蓝牙模块

很早就有这个想法,周日的时候无聊,早上起来上网搜了一下,发现ASUS A8的内置蓝牙模块型号叫做BT-183,已经有人成功安装过了,而且还可以不破坏保修标签,于是心和手更痒了。接着去淘宝搜了一下,还真有卖这个模块的,于是买了一个。经历三天遥远的路途,从吉林到上海,今天总算到了。那人用一个快递信封给我快递过来的,打开一看,就看见几块硬纸板,绑得严严实实的,似乎没有东西的样子,我还以为那卖家忽悠我呢!拆开一看,这蓝牙模块也真够小的!

晚上回家来,照着这篇教程(华硕蓝牙模块安装手册 BT-183)装了一遍,第一次这样拆笔记本,还真是有点为难,尤其是把蓝牙模块塞进笔记本的那个地方,太麻烦了!一哥们在旁边起哄:“第一次嘛,要进去是要麻烦点!”囧死了!还好试了几次就进去了,再用镊子轻轻按了几下,总算是插紧了,然后把模块和线收好,这个地方太麻烦了,那线的弹性太TM的好了……

不过总算搞定了,装上螺丝,开机,装驱动,按下蓝牙功能键,成功了!…

IE8标准模式不再支持CSS表达式(Expression)

IE8标准模式不再支持CSS表达式(Expression)

原文地址:Ending Expressions

标准遵守情况、性能、可靠性和安全性等设计标准构成了IE8的设计整体,包括新的和已经存在功能特性。最终,IE8的标准模式不再支持CSS表达式(CSS Expression)。这个变化在以前就曾经在IE blog上公布过,这篇文章将提供关于这个决定的更详细的一些信息。下面的FAQ(常见问题)将给您一个快速的总览:包括它的功能特性、我们设计决定的背后原因以及这对你的网站有什么影响。

什么是CSS表达式?

它也被称为“动态属性”,这个特有的CSS扩展是在IE5中引入的。远远在jQuery和Dojo等JavaScript库的诞生之前,它允许web开发者动态地通过CSS选择器来给页面绑定脚本。举一个例子,下面的CSS声明根据一天中的事件来更新页面中某些区块的背景颜色:

div.title { background-color:

在AS3中设置ComboBox的字体和宽高

我基本不用组件的,偶尔为了速度还是需要用一下组件,没想到AS3里的组件变化也非常的大,设置一个ComboBox的属性也够麻烦的。先看看效果:

在AS3中,要设置ComboBox的字体类型和字体大小也要用TextFormat,而且很麻烦的是要分别对TextField和dropdown设置该TextFormat,最诡异的是设置dropdown的宽和高,ComboBox有个dropdownWidth属性,却没有对应的dropdownHeight属性,而是要使用dropdown的rowHeight属性,真是够BT的……具体看下面的代码吧!

// combox 是一个ComboBox组件(Component)
// 设置它的宽度和高度
combox.width = 300;
combox.height = 48;
// 添加几个选项
combox.addItem({data:1,label:'测试项目一'});
combox.addItem({data:2,label:'测试项目二'});

关于FlashPlayer前几个月爆出的严重安全漏洞

之所以要写这篇文章,是因为最近我的blog中有很大一部分流量来自于Google和百度的搜索,其中一些比重很大的关键词就是:Flash Player存在严重漏洞。可惜搜索引擎收录的是我很早以前的一片文章,关于FlashPlayer 7的,而不是FlashPlayer 9.0.115的。

我但是曾经在经典论坛怀疑说FlashPlayer 9.0.115是不是发得有点匆忙,有个在Vista下全屏的bug都没完整测试就直接发出来了,后来到了9.0.124的时候解决了这个bug。前不久又爆出9.0.115这个版本有严重安全漏洞,关于漏洞,网络上(杀毒软件厂商)的描述是这样的:

Adobe Flash Player存在安全漏洞,黑客可利用恶意 Flash 动画(SWF 文件)攻击存在漏洞的系统;用户在播放含有恶意的Flash动画(SWF 文件)时,电脑可能被植入木马等恶意程序。

攻击者可以通过精心设计的特殊SWF文件实施攻击。浏览这些特殊构造的SWF文件,会运行攻击者设定的任意代码。由于Adobe

Mootools 1.2教程(8)——输入过滤第一部分(数字)

原文地址:《MooTools 1.2系列教程目录》

今天我们来看看MooTools是怎样使得过滤用户输入变得非常轻松。我们今天将讲一些基本的数字过滤,明天再更深入地讲讲字符串过滤。

注意:JavaScript中的输入过滤只是为了保证(客户端)代码顺利执行,并不能替代服务器端的字符串过滤来保护你的应用程序不被注入攻击。

在第四讲的最后的一个例子中,我们从文本输入框获取RGB值,然后使用它们来改变页面背景色,今天我们首先来看看那个例子的部分代码,并以此展开我们这一讲。…

Mootools 1.2教程(7)——设置和获取样式表属性

原文地址:30 Days of Mootools 1.2 Tutorials – Day 7 – Set and Get Style Properties

设置和获取样式表属性

请尊重个人劳动,转载请注明出处:http://fdream.net,译者:Fdream

如果你还没有准备好开始这一讲,请参考这一系列的教程,这里是《MooTools 1.2系列教程目录》

欢迎开始这一系列的教程的第七讲。今天,我们来看一下如何通过MooTools 1.2和我们以前几讲中的内容来操作样式,这将给你在UI上带来很大的控制权。处理样式非常简单,不过今天我们要做一些调整。例如,我们要介绍键值对(key-value pair)对象。我们也会讲到在domready之外来传递变量,就像我们在关于函数的那一讲中学到的一样。从这里开始,我们会开始慢慢提高难度,介绍一些必要的编程概念。如果你是JavaScript新手或者第一次开始学MooTools,请确保你在明白了前面的教程,你可以随意地问我任何问题。…