<?xml version="1.0" encoding="UTF-8"?><!-- generator="WordPress/2.5.1" -->
<rss version="0.92">
<channel>
	<title>Allan.Wang's Blog</title>
	<link>http://www.allan-wang.com.cn/blog</link>
	<description>其實我只想今天比昨天強一點。</description>
	<lastBuildDate>Mon, 08 Dec 2008 11:41:28 +0000</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>en</language>
	
	<item>
		<title>jQuery中:eq :gt :it的使用方法</title>
		<description><![CDATA[从下面代码的注释中,你应该能明白着三者的关系了  
不仅有要感慨下,jQuery的选择器真是无比的强大啊- -
不过有点要说下,:eq(1)其中的括号中的数字是从0开始的,有点类似于数组的计算方法,
比如下面的实例中:eq(1)写成:eq(0)的话,就是选择了第1个p标签,  
 
&#60;script type=&#8221;text/javascript&#8221;&#62;
$(document).ready(function(){
//第2个 p ,alert出22222
 alert( $(&#8221;p:eq(1)&#8221;).text());
//第3个p之后的p,alert出44444和55555
alert( $(&#8221;p&#8221;).gt(2).text());
//第2个p以及之前的p  alert出22222和11111
    alert(&#8221;lt=&#8221;+  $(&#8221;p:lt(2)&#8221;).text());
  });
&#60;/script&#62;
&#60;body&#62;
&#60;p&#62;11111&#60;/p&#62;
&#60;p&#62;22222&#60;/p&#62;
&#60;p&#62;33333&#60;/p&#62;
&#60;p&#62;44444&#60;/p&#62;
&#60;p&#62;55555.&#60;/p&#62;
&#60;/body&#62;
]]></description>
		<link>http://www.allan-wang.com.cn/blog/2008/12/jqueryeqgtit/</link>
			</item>
	<item>
		<title>JQuery 中 is() 解析及用法</title>
		<description><![CDATA[is( String  expr ),返回值为布尔值(Boolean),当然看到这里你自然的会想到利用它来做判断了  
用来检查表达式当前选择的元素集合，如果其中至少有一个元素符合这个给定的表达式就返回true。
否则返回false.
那么看完用法带大家一起看下实例稳固一下:)
实例是摘自keel翻译的jquery入门,由于他本人的blog无法访问了,所以我拿来放到我的空间上面.利于大家学习  

地址是:www.allan-wang.com.cn/jquery/jquerystart.htm
实例开始:
$(document).ready(function() {
$(&#8217;#faq&#8217;).find(&#8217;dd&#8217;).hide().end().find(&#8217;dt&#8217;).click(function() {
         var answer = $(this).next();
         if (answer.is(&#8217;:visible&#8217;)) {
             answer.slideUp();
         } else {
             answer.slideDown();
         }
     });
});
其中answer.is(&#8217;:visible&#8217;)指的是可见的answer元素,如果返回true则执行answer.slideUp(),
否则则执行answer.slideDown.
当然:visible是jquery的选择器.您可以在jquery1.2的中文API中的选择器-可见性来查看他的用法,
相关的用法还有:hidden
]]></description>
		<link>http://www.allan-wang.com.cn/blog/2008/12/jqueryis/</link>
			</item>
	<item>
		<title>网站重构到底是什么?</title>
		<description><![CDATA[在蓝色看到一篇很好的文章,就赶紧转来了,转完休息去  
原文在这里http://www.blueidea.com/tech/web/2008/6262.asp
前不久听到这样一个面试的故事：
面试官：你准备在我们公司做些什么事情？（大致这个意思）
面试人：我准备在公司做网站重构，把原来是table的页面全部重构成css+div的，&#8230;
面试官：不好意思，我们的网站都是css+div的，不需要重构了。
面试人：&#8230;(无语了)
自从2004年阿捷翻译了《网站重构》这本书，网站重构这个词就慢慢的必成了css+div，甚至等同起来，一些朋友把标准跟重构也混淆了，css+div跟标准也混淆了。这里有很多误读的成份。
无可厚非《网站重构》当时给我们带来了一场革命。我看过部分章节，是本好书。可能是css，div，标准这些词太过于频繁，很多误读的人把网站重构和css+div或者html+css，css+div和标准，标准和重构都等同起来，弄得到底什么是什么，谁也说不清楚。这书出版到现在已经5年了，网站重构到底要多久？
我个人认为这本书始终围绕这一个思想：使用WEB标准重构网站。

21世纪初最大的IT冤案
由于2004年绝大多数网站是使用table布局的，我们知道table布局最大的坏处就是不利于结构和表现分离，后期维护比较麻烦。而使用css和div能很好的解决这个问题。table标签一直是W3C html的标准标签之一，为什么到了我们这里就拒绝使用了，table标签被抹杀是21世纪初最大的IT冤案。《网站重构》这本书自始至终没说不能使用table标签，为什么到现在，页面上出现一个table标签就说这页面是垃圾呢？可能跟中国革命的彻底性有关系。
什么是WEB标准
WEB标准不是某一个标准，而是一系列标准的集合。网页主要由三部分组成：结构（Structure）、表现（Presentation）和行为（Behavior）。对应的标准也分三方面：结构化标准语言主要包括XHTML和XML，表现标准语言主要包括CSS，行为标准主要包括对象模型（如W3C DOM）、ECMAScript等。这些标准大部分由W3C起草和发布，也有一些是其他标准组织制订的标准，比如ECMA（European Computer Manufacturers Association）的ECMAScript标准。
具体可以查看：http://baike.baidu.com/view/7913.htm
而在阿捷的网页设计师网站（相当于《网站重构》的官方网站）有这么一句话：
怎样才是符合web标准?简单说就是不用HTML+table来设计页面，改用XHTML+CSS来实现。(出自：http://www.w3cn.org/faq/index.html)
可能这句话才是误读《网站重构》的真正源头，抹杀table的真正元凶。但是我相信阿捷他老人家的出发点是鼓励大家使用XHTML+CSS来布局网页。
《网站重构》给我们带来一场革命，同时也给我们带来了灾难性的div+css泛滥
《网站重构》给我们带来一场革命是译者预料之中的事情，同时也给我们带来了灾难性的div+css泛滥是译者始料未及的。现在人们都在谈论div+css，谈论怎么解决浏览器兼容性问题，一个页面你就使用了div标签的有之，其实根本不存在div+css，是HTML+CSS。我问一个朋友什么是em标签，他说em是单位（css中度量单位），大家css都很精通了，html呢，基础呢，结构呢，语义呢？反正都是源代码一看，都是div标签，就是好页面。那你们把这个页面裸奔一下，看看是什么，用Twinsen Liang 的话去看看小学语文书。
网站重构到底是什么
网站重构不是一种技术，不是css+div，更不是标准，网站重构是一种思想，是一种理念。
引用WebReBuild.ORG 的话：当前国内的同行普遍的认为：所谓的网站重构就是“DIV+CSS”，想法固然极度局限。但也不是另一部分的人认为是“XHTML+CSS”，因为“XHTML+CSS”只是页面重构。真正的网站重构理应包含结构、行为、表现三层次的分离以及优化，行内分工优化，以及以技术与数据、人文为主导的交互优化等。
网站重构到底要多久
重构网站先重构人，重构你的理念，不要光光追求技术，追求还原设计稿，追求浏览器的兼容性，重要的是基础和理念。当你真正了解什么是网站重构的时候网站重构也就真正开始了。
纯属个人观点，欢迎留言斧正。
]]></description>
		<link>http://www.allan-wang.com.cn/blog/2008/12/chonggou/</link>
			</item>
	<item>
		<title>flash收费组件之photoflow</title>
		<description><![CDATA[效果预览地址:http://www.flashloaded.com/flashcomponents/photoflow/example1.html
(这个网站上as2版本的卖到了59.95刀-_!!)
如果您看过预览,会说,呀,这个好看是好看,但是滚动条太难看,滚动条的位置我也不喜欢.
那么我告诉你,没关系,下载完附件,您完全可以自己DIY出喜欢的效果:)
虽然这个效果js也可以做的出来,但是我一向很喜欢flash的效果,因为不用考虑到浏览器,
做的出来就看的到.而且这个可以自己随意简单的修改,实在是做展示的首选
下面是下载地址:
flash组件:http://www.allan-wang.com.cn//download/photoFlow.rar
用户手册(英文版):http://www.allan-wang.com.cn//download/Guide.rar
很多版本的domo:http://www.allan-wang.com.cn//download/domo.rar
此文首次发表于：http://bbs.lampbrother.net/thread-9671-1-1.html
]]></description>
		<link>http://www.allan-wang.com.cn/blog/2008/11/photoflow/</link>
			</item>
	<item>
		<title>子容器等高父容器</title>
		<description><![CDATA[又是很长时间没更新日志了  - -
今天碰到一个很奇怪的问题:子容器等高于父容器,
群里有人给了个解决方案,很好,发下他的demo顺便给自己做个记号,
http://maopao.org/zy/demo/aotu_height.html
BTW:其实解决问题的方法很多,很多时候很有必要换种方法来思考问题:)
       最近一直在看栅格,回头写下心得:)
]]></description>
		<link>http://www.allan-wang.com.cn/blog/2008/11/denggao/</link>
			</item>
	<item>
		<title>window.onload覆盖问题的解决</title>
		<description><![CDATA[最近比较忙,因为打算去外地,所以都在抓紧时间冲电,难得有闲的时间也抓紧看下电影-_!!
好了,费话少说,进入正题,
今天在做页子,一直都用ff,边测试边写&#8230;但是页子完成大半,忽然用ie一刷新.蒙了.
好几个函数是全瘫掉.. - -.一下蒙掉,这个页子可花去我快一下午时间啊..
赶紧的去baidu搜,但是一想没关键词啊&#8230;
只有无奈的再看代码,忽然发现他们有一共同点&#8230;window.onload&#8230;.
这下有了关键词,用baidu一搜,才晓得答案,
 
&#60;html&#62;
&#60;head&#62;
&#60;script type=&#8221;text/javascript&#8221; language=&#8221;javascript&#8221;&#62;
window.onload=function()
{
    alert(&#8220;第一次调用&#8220;);
}
&#60;/script&#62;
&#60;/head&#62;
&#60;body&#62;
&#60;script type=&#8221;text/javascript&#8221; language=&#8221;javascript&#8221;&#62;
window.onload=function()
{
    alert(&#8220;第二次调用&#8220;);
}
&#60;/script&#62;
&#60;/body&#62;
&#60;/html&#62;
 
 
&#60;html&#62;
&#60;head&#62;
&#60;script type=&#8221;text/javascript&#8221; language=&#8221;javascript&#8221;&#62;
window.onload=function()
{
    alert(&#8220;第一次调用&#8220;);
}
&#60;/script&#62;
&#60;/head&#62;
&#60;body&#62;
&#60;script type=&#8221;text/javascript&#8221; language=&#8221;javascript&#8221;&#62;
function twofunction()
{
    alert(&#8220;第二次调用&#8220;
);
}
window.attachEvent(&#8217;onload&#8217;,twofunction); 
 

&#60;/script&#62;

 
,第一段代码第二个onload很成功的覆盖了第一个,于是第一个很可悲的无法运行- -,
第二段代码很正常的两个函数都能运行:)
现在比较下两段代码的不同,您就会知道答案了  
不过刚在群里有前辈说attachEvent是IE专有属性,
最好的方法是这样写
window.onload = function()
{
function1;
function2;
} 
 08.11.13补记:通过jq的$(document).ready()机制也可以解决  
 
]]></description>
		<link>http://www.allan-wang.com.cn/blog/2008/10/windowonload%e8%a6%86%e7%9b%96%e9%97%ae%e9%a2%98%e7%9a%84%e8%a7%a3%e5%86%b3/</link>
			</item>
	<item>
		<title>记录:常用正则表达式</title>
		<description><![CDATA[这几天再看php的正则,各个语言的正则都差不多,于是专门跑上网上找了几个常用的记录下来,以后就省的找了-_!!,废话不多说.正文开始

匹配中文字符的正则表达式： [\u4e00-\u9fa5]
评注：匹配中文还真是个头疼的事，有了这个表达式就好办了
匹配双字节字符(包括汉字在内)：[^\x00-\xff]
评注：可以用来计算字符串的长度（一个双字节字符长度计2，ASCII字符计1）
匹配空白行的正则表达式：\n\s*\r
评注：可以用来删除空白行
匹配HTML标记的正则表达式：&#60;(\S*?)[^&#62;]*&#62;.*?&#60;/\1&#62;&#124;&#60;.*? /&#62;
评注：网上流传的版本太糟糕，上面这个也仅仅能匹配部分，对于复杂的嵌套标记依旧无能为力
匹配首尾空白字符的正则表达式：^\s*&#124;\s*$
评注：可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等)，非常有用的表达式
匹配Email地址的正则表达式：\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
评注：表单验证时很实用
匹配网址URL的正则表达式：[a-zA-z]+://[^\s]*
评注：网上流传的版本功能很有限，上面这个基本可以满足需求
匹配帐号是否合法(字母开头，允许5-16字节，允许字母数字下划线)：^[a-zA-Z][a-zA-Z0-9_]{4,15}$
评注：表单验证时很实用
匹配国内电话号码：\d{3}-\d{8}&#124;\d{4}-\d{7}
评注：匹配形式如 0511-4405222 或 021-87888822
匹配腾讯QQ号：[1-9][0-9]{4,}
评注：腾讯QQ号从10000开始
匹配中国邮政编码：[1-9]\d{5}(?!\d)
评注：中国邮政编码为6位数字
匹配身份证：\d{15}&#124;\d{18}
评注：中国的身份证为15位或18位
匹配ip地址：\d+\.\d+\.\d+\.\d+
评注：提取ip地址时有用
匹配特定数字：
^[1-9]\d*$　 　 //匹配正整数
^-[1-9]\d*$ 　 //匹配负整数
^-?[1-9]\d*$　　 //匹配整数
^[1-9]\d*&#124;0$　 //匹配非负整数（正整数 + 0）
^-[1-9]\d*&#124;0$　　 //匹配非正整数（负整数 + 0）
^[1-9]\d*\.\d*&#124;0\.\d*[1-9]\d*$　　 //匹配正浮点数
^-([1-9]\d*\.\d*&#124;0\.\d*[1-9]\d*)$　 //匹配负浮点数
^-?([1-9]\d*\.\d*&#124;0\.\d*[1-9]\d*&#124;0?\.0+&#124;0)$　 //匹配浮点数
^[1-9]\d*\.\d*&#124;0\.\d*[1-9]\d*&#124;0?\.0+&#124;0$　　 //匹配非负浮点数（正浮点数 + 0）
^(-([1-9]\d*\.\d*&#124;0\.\d*[1-9]\d*))&#124;0?\.0+&#124;0$　　//匹配非正浮点数（负浮点数 + 0）
评注：处理大量数据时有用，具体应用时注意修正
匹配特定字符串：
^[A-Za-z]+$　　//匹配由26个英文字母组成的字符串
^[A-Z]+$　　//匹配由26个英文字母的大写组成的字符串
^[a-z]+$　　//匹配由26个英文字母的小写组成的字符串
^[A-Za-z0-9]+$　　//匹配由数字和26个英文字母组成的字符串
^\w+$　　//匹配由数字、26个英文字母或者下划线组成的字符串
评注：最基本也是最常用的一些表达式
原载地址：http://lifesinger.3322.org/myblog/?p=185
 
]]></description>
		<link>http://www.allan-wang.com.cn/blog/2008/09/zhengze/</link>
			</item>
	<item>
		<title>计算器制作&#038;知识要点</title>
		<description><![CDATA[回头一看- -，9月份都没写日志。
昨天刚忙完，就做了一个web版的计算器,熟悉了下表格跟js。。
在把源码贴出来之前，把这个计算器用到的基本知识点总结下，如果你是高手，那您直接跳过就好了-_!!
document.forms[]属性:一个包含文档中的对象类型是form元素对象。因为在一个文档中不止一个表单，所以表单在document.forms[]属性中以数组的形式存储。数组方括号内的索引号指向数组中的某个元素。为了找出当前文档中有多少form对象，使用：
　　document.forms.length
　　比如要访问文档中的一个表单，引用如下：
　　document.forms[0]
　　然而—般来说，我们建议使用表单NAME属性中的表单名引用表单，如下形式：
　　document.formName
　　两种方法得到相同的对象。当脚本需要在表单中引用元素时，对象的完整地址必须包括document和表单引用。

String.IndexOf 方法 ：indexof() ：在字符串中从前向后定位字符和字符串；所有的返回值都是指在字符串的绝对位置，如为空则为- 1
string test=&#8221;asdfjsdfjgkfasdsfsgfhgjgfjgdddd&#8221;;
   test.indexof(&#8217;d')       =2            //从前向后 定位 d 第一次出现的位置
   test.indexof(&#8217;d',1)     =2           //从前向后 定位 d 从第三个字符串 第一次出现的位置
   test.indexof(&#8217;d',5,2)   =6      //从前向后 定位 d 从第5 位开始查，查2位，即 从第5位到第7位；

substr 方法：返回一个从指定位置开始，并具有指定长度的子字符串。
function substr(start : Number [, length : Number]) : String
start  必选。所需的子字符串的起始位置。字符串中第一个字符的索引为 0。
length  可选项。返回的子字符串中包含的字符数。

如果 length 为 0 或负数，将返回一个空字符串。如果没有指定该参数，则子字符串将延续到字符串的结尾。

 
parseFloat：
用法：parseFloat(string)
参数:string 要读取并转换为浮点数的字符串。
下面的示例使用 parseFloat [...]]]></description>
		<link>http://www.allan-wang.com.cn/blog/2008/09/jisuanqi/</link>
			</item>
	<item>
		<title>Web开发设计的五大准则</title>
		<description><![CDATA[如果仓促而为，设计一个专题或者网站一定会成为恶梦。Web设计需要遵循一些准则并有计划地去做。
规则 #1 : 先出设计图+ X% S# o* G  t+ X9 l! P% O
这是必须的。不要假设设计图在你的头脑中就开始设计web，必须要放到纸上。可以这样做：7 D$ I( [3 \, ]: e- L2 K
1，  拿尺子、笔和纸，按照具体的尺寸一行一行地画下来；( K% f) b4 r# y, d  S&#38; X5 p) Y0 ~
2，  记得考虑分界线的长度等，这样才能符合CSS的像素；$ Y/ &#124;8 [3 &#124;3 Z, z$ U/ l8 F
3，  记下设计的每一个细节免得忘记，如果把所有细节都累积到最后将是巨大的麻烦。
规则 #2 :配色
这是设计的核心部分，只有颜色搭配合适才能使你的网页看起来不错。首先要决定的是主色，也即你在网页中多数使用的颜色；然后选择跟主色调搭配的第二颜色；不要选择超过三种颜色不然你的设计看起来会很乱。如果你想要更多的颜色，可以使用浅色或者深色的阴影来搭配主色调。
 浏览十个跟你网页有同样主色调的网页；  给几个人看你的配色方案并取得反馈；2 l3 G&#38; U3 M$ y# G$ f9 y  ~; j9 _3 T' Y
3，  从浏览的网页和反馈你将更好地完善你的颜色搭配。, l* h! [...]]]></description>
		<link>http://www.allan-wang.com.cn/blog/2008/08/webkaifa/</link>
			</item>
	<item>
		<title>番茄花园（洪磊）的取证将异常困难</title>
		<description><![CDATA[继珊瑚虫一案，现在又出现番茄花园所有人洪磊一案。
最近网络上传播的沸沸扬扬，我倒也没去理会。今天开xunlei，弹出新闻页番茄花园的文章十分醒目，就点进去看了下。顺便发下本博主的看法。其实洪磊无所谓冤不冤。从洪磊一开始被朋友拒绝在其公司放网站，可能他就意识到，这是擦边球。落到现在下场，不能不说洪磊没有思想准备。
 
好了，以下文章转与xunlei.com
 
一位曾与番茄花园合作过的人士透露,由于番茄花园案牵扯到太多与盗版及插件捆绑等相关的“特殊行业”,番茄花园案取证过程将异常困难.
　　该人士表示,其在一家拥有IE插件的互联网公司从事互联网桌面软件的BD工作.其透露,在2005年便开始与番茄花园深入合作.“当时负责合作的是我们的 一个大领导,他亲自负责与番茄花园洽谈捆绑插件合作的事宜.”该人士透露,“番茄花园团队通过我们插件每年的收入是非常巨大的,具体的数量级无法透露.”
　　通过洪磊好友郑朝辉公开的录音材料可知,洪磊每年通过易趣插件可以至少获利20万元,而据笔者猜测,番茄花园通过该家公司插件获得的收入也应该在十万数量级.
　　同时,该人士表示,由于盗版产业和插件捆绑产业有比较严格的圈子,想进入这个圈子是异常困难的,所以,其比较“悲观”的表示说,“如果这个圈子好渗入,早就能解决盗版问题了.但是,这个圈子太难渗入了,想通过番茄花园案实质性的打击盗版还是有一定困难的.”
　　 法律尽管存在问题
　　据了解,盗版产业链有着非常严密的组织,其在软件破解、光盘刻录、光盘销售等环节有着非常严格的控制.在所有的环节中,最核心的环节就是软件破解.当谈及盗版产业时,该人士说到,“大家都知道软件破解是盗版的源头,但是据我所知国内并没有规定破解软件是违法的.而软件破解都能作为一项业务都能成立公司,你就可以想象政府监管的问题了.”该人士透露,为番茄花园提供技术支持的成都红果公司便是从事软件破解业务的.而笔者在百度搜索“软件破解”时,竟然发现百度推广中有专业破解网站的广告,显然百度也认为软件破解没有违反中国法律.
　　同时,国内打击盗版一般是从末端开始的,即从光盘销售开始大家,而通过这个环节是最难获取有价值信息的,所以国内打击盗版的效果一直不是很明显.
　　 洪磊非法获利取证异常艰难
　　“ 我觉得洪磊定罪的话,关键还是在获利金额上,洪磊获利主要通过软件捆绑,其取证并不容易.原因非常简单,番茄花园的大客户雅虎和易趣,公司近两年来发生了太多的变化,相关当事人都已离开,这给取证工作造成了非常大的障碍.”当谈及洪磊可能的罪行时,该人士表示.而到目前为止,雅虎和易趣两大洪磊录音中出现的公司均未就番茄花园案件发表过任何评论.
　　截止到目前为止,还没有任何关于番茄花园调查及调查结果的消息.
]]></description>
		<link>http://www.allan-wang.com.cn/blog/2008/08/fanqiehuayuan/</link>
			</item>
</channel>
</rss>
