<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title><![CDATA[思想之地]]></title> 
<description><![CDATA[Echo is my life]]></description>
<link>http://be-evil.org/</link>
<language>zh-cn</language>
<generator>www.emlog.net</generator>

<item>
	<title>菊花文和边框文实现原理</title>
	<link>http://be-evil.org/?post=179</link>
	<description><![CDATA[<p>最近网上开始流行神奇的菊花文和边框文，比原来的火星文更容易读取也更容易突破关键词防御系统</p>
<p>菊花文表现形式为：朦҉胧҉中҉的҉罪҉恶҉&nbsp;</p>
<p>边框文表现形式为：[̲̅朦̲̅胧̲̅中̲̅的̲̅罪̲̅恶̲̅]</p>
<p>刚开始很诧异这个玩意是怎么弄出来的，跑去看了一下转换器的源码才明白了原理：</p>
<p>原理其实很简单，只是将标准的文字中参入了一些特殊字符而已</p>
<p>比如说原文为 朦胧中的罪恶，转换后实际的内容是 朦{字符}胧{字符}中{字符}的{字符}罪{字符}恶</p>
<p>由于符号比较特殊，没有盖住前后的字体，才造成了这种假象</p>
<p>菊花文的符号是&nbsp;&nbsp; <span class="objectBox objectBox-text " role="presentation">҉</span>
 <span class="objectBox objectBox-text " role="presentation">҉&nbsp;&nbsp;&nbsp;&nbsp; <strike>ASCII</strike>
 unicode码为 1161</span>
 <span class="objectBox objectBox-text " role="presentation"><br /></span>
</p>
<p><span class="objectBox objectBox-text " role="presentation">边框的符号是 </span>
 &nbsp;&nbsp; <span class="objectBox objectBox-text " role="presentation">̲̅&nbsp; <strike>ASCII</strike>
 </span>
 <span class="objectBox objectBox-text " role="presentation"> unicode</span>
 <span class="objectBox objectBox-text " role="presentation">码为773和 818<br /></span>
</p>
<p><span class="objectBox objectBox-text " role="presentation">按照这个原理，我们可以找出更多的神奇符号来作出神奇的文字,这里有<a href="http://www.tamasoft.co.jp/en/general-info/unicode.html">unicode字符表</a>
</span>
</p>
<p>最后不得不佩服一下中国人的智慧，呵呵</p>
<p>下面是边框文和菊花文的转换代码，语言为JavaScript</p>
<p><a href="http://be-evil.org/content/uploadfile/201004/aa64d57435b1d02fd6723f33a0348c3d20100413181857.png" id="ematt:198" target="_blank"><img alt="点击查看原图" border="0" src="http://be-evil.org/content/uploadfile/201004/aa64d57435b1d02fd6723f33a0348c3d20100413181857.png" /></a>
</p><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://be-evil.org/?post=228">优化FireFox速度，移除插件（plugin）的方法</a></p><p><a href="http://be-evil.org/?post=208">PHP解析XML异常问题解决</a></p><p><a href="http://be-evil.org/?post=161">PHP解数学题</a></p><p><a href="http://be-evil.org/?post=195">mysql_fetch_object函数读取SELECT COUNT(*)数据的方法</a></p><p><a href="http://be-evil.org/?post=210">PHP匹配GBK全中文字正则表达式（不包括GBK标点符号）</a></p><p><a href="http://be-evil.org/?post=183">PHP计算相关两个时区的时间差</a></p><p><a href="http://be-evil.org/?post=194">如何删除ckeditor的状态栏</a></p><p><a href="http://be-evil.org/?post=188">ubuntu配置TortoiseHg的对比工具meld</a></p><p><a href="http://be-evil.org/?post=154">JavaScript在不同浏览器下取得鼠标绝对位置函数</a></p><p><a href="http://be-evil.org/?post=207">PHP识别url重写请求</a></p></div>]]></description>
	<pubDate>Tue, 13 Apr 2010 04:12:28 +0000</pubDate>
	<author>朦朧中的罪惡</author>
	<guid>http://be-evil.org/?post=179</guid>

</item>
<item>
	<title>JavaScript在不同浏览器下取得鼠标绝对位置函数</title>
	<link>http://be-evil.org/?post=154</link>
	<description><![CDATA[<p>
	首先不同浏览器中event位置属性的分析:</p>
<p>
	1. IE的event.x,event.y是以事件触发元素的父元素外界为参考点(不包括滚动距离)<br />
	2. Firefox的event.pageX,event.pageY是以body元素为参考点(包括滚动距离)<br />
	3. event.clientX,event.clientY以浏览器左上角为参考点(不包括滚动距离)<br />
	4. IE的event.offsetX,event.offsetY和Firefox的event.layerX,event.layerY以事件触发元素内界的左上角为参考点(包括滚动距离,当有边框时,可能出现负数)</p>
<p>
	然后是DOM对象高度属性分析<br />
	<br />
	1. scrollHeight: 获取对象的滚动高度<br />
	2. scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离 <br />
	3. scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离 <br />
	4. scrollWidth:获取对象的滚动宽度 <br />
	5. offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度 <br />
	6. offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置 <br />
	7. offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置</p>
<p>
	有了以上分析，写出两个取位置的函数</p>
<p>
	<span style="color: rgb(0, 128, 0);">// 取X轴位置</span><br />
	<span style="color: rgb(0, 0, 255);">function</span> <span style="color: rgb(0, 0, 0);">mouseX</span>(<span style="color: rgb(0, 0, 0);">evt</span>) <span style="color: rgb(0, 0, 0);">{</span><br />
	&nbsp;&nbsp;&nbsp; <span style="color: rgb(0, 128, 0);">// firefox</span><br />
	&nbsp;&nbsp;&nbsp; <span style="color: rgb(0, 0, 255);">if</span> (<span style="color: rgb(0, 0, 0);">evt</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">pageX</span>) <span style="color: rgb(0, 0, 255);">return</span> <span style="color: rgb(0, 0, 0);">evt</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">pageX</span>;<br />
	&nbsp;&nbsp;&nbsp; <span style="color: rgb(0, 128, 0);">// IE</span><br />
	&nbsp;&nbsp;&nbsp; <span style="color: rgb(0, 0, 255);">else</span> <span style="color: rgb(0, 0, 255);">if</span> (<span style="color: rgb(0, 0, 0);">evt</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">clientX</span>)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: rgb(0, 0, 255);">return</span> <span style="color: rgb(0, 0, 0);">evt</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">clientX</span> <span style="color: rgb(0, 0, 0);">+</span> (<span style="color: rgb(0, 0, 0);">document</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">documentElement</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">scrollLeft</span> <span style="color: rgb(0, 0, 0);">?</span> <span style="color: rgb(0, 0, 0);">document</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">documentElement</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">scrollLeft</span> <span style="color: rgb(0, 0, 0);">:</span> <span style="color: rgb(0, 0, 0);">document</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">body</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">scrollLeft</span>);<br />
	&nbsp;&nbsp;&nbsp; <span style="color: rgb(0, 0, 255);">else</span> <span style="color: rgb(0, 0, 255);">return</span> <span style="color: rgb(0, 0, 255);">null</span>;<br />
	<span style="color: rgb(0, 0, 0);">}</span><br />
	<span style="color: rgb(0, 128, 0);">// 取Y轴位置</span><br />
	<span style="color: rgb(0, 0, 255);">function</span> <span style="color: rgb(0, 0, 0);">mouseY</span>(<span style="color: rgb(0, 0, 0);">evt</span>) <span style="color: rgb(0, 0, 0);">{</span><br />
	&nbsp;&nbsp;&nbsp; <span style="color: rgb(0, 128, 0);">// firefox</span><br />
	&nbsp;&nbsp;&nbsp; <span style="color: rgb(0, 0, 255);">if</span> (<span style="color: rgb(0, 0, 0);">evt</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">pageY</span>) <span style="color: rgb(0, 0, 255);">return</span> <span style="color: rgb(0, 0, 0);">evt</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">pageY</span>;<br />
	&nbsp;&nbsp;&nbsp; <span style="color: rgb(0, 128, 0);">// IE</span><br />
	&nbsp;&nbsp;&nbsp; <span style="color: rgb(0, 0, 255);">else</span> <span style="color: rgb(0, 0, 255);">if</span> (<span style="color: rgb(0, 0, 0);">evt</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">clientY</span>)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: rgb(0, 0, 255);">return</span> <span style="color: rgb(0, 0, 0);">evt</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">clientY</span> <span style="color: rgb(0, 0, 0);">+</span> (<span style="color: rgb(0, 0, 0);">document</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">documentElement</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">scrollTop</span> <span style="color: rgb(0, 0, 0);">?</span> <span style="color: rgb(0, 0, 0);">document</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">documentElement</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">scrollTop</span> <span style="color: rgb(0, 0, 0);">:</span> <span style="color: rgb(0, 0, 0);">document</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">body</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">scrollTop</span>);<br />
	&nbsp;&nbsp;&nbsp; <span style="color: rgb(0, 0, 255);">else</span> <span style="color: rgb(0, 0, 255);">return</span> <span style="color: rgb(0, 0, 255);">null</span>;<br />
	<span style="color: rgb(0, 0, 0);">}</span></p><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://be-evil.org/?post=194">如何删除ckeditor的状态栏</a></p><p><a href="http://be-evil.org/?post=56">Pro JavaScript系列讲座(1)</a></p><p><a href="http://be-evil.org/?post=122">利用javascript闭包特性给setInterval(setTimeout)传递参数</a></p><p><a href="http://be-evil.org/?post=58">Pro JavaScript系列讲座(2):对象基础</a></p><p><a href="http://be-evil.org/?post=116">jquery修复ie6不支持position: fixed;的插件</a></p><p><a href="http://be-evil.org/?post=101">FireFox和IE下使用ajax的一些小问题总结</a></p><p><a href="http://be-evil.org/?post=179">菊花文和边框文实现原理</a></p><p><a href="http://be-evil.org/?post=33">JavaScript得到当前窗口的所有大小值</a></p><p><a href="http://be-evil.org/?post=2">JavaScript生成ifame导致IE报无法打开搜索页的解决办法</a></p><p><a href="http://be-evil.org/?post=52">IE6和IE7中document.getElementsByName用法问题</a></p></div>]]></description>
	<pubDate>Wed, 03 Mar 2010 06:32:36 +0000</pubDate>
	<author>朦朧中的罪惡</author>
	<guid>http://be-evil.org/?post=154</guid>

</item></channel>
</rss>