完全禁用Flash右键菜单(IE only)

January 20th, 2010 Flash, Javascript , , (0)

在网页上加入以下Javascript代码

<script type="text/javascript">
function handleclick() {
	if (event.button == 2 && "OBJECT" == event.srcElement.tagName.toUpperCase()) doNothing;
}
document.onmousedown = handleclick;
</script>

实现原理:
当右键点击flash的时候让IE报错,代码中的doNothing从未声明。

缺点:
右键点击flash后,状态栏上会出现“网页上有错误” :twisted:

Min/Max-Height/Width for IE

January 14th, 2010 CSS , (0)

IE6:_height/_width 等价于 min-height/min-width

IE6:-height/-width 等价于 max-height/max-width

IE PNG Fix 绝佳方案

January 4th, 2010 CSS, Javascript , , , (0)

互联网上解决这个IE6的透明PNG的方案也是多不胜数,从使用IE特有的滤镜或是e­xpression,再到javascript+透明GIF替代.但是这些方法都有一个缺点,就是不支持CSS中backgrond-position与background-repeat.

DD_belatedPNG支持backgrond-position与background-repeat.这是其他js插件不具备的.同时DD_belatedPNG还支持a:hover属性,以及<img>.
Read more…

IE Bug(position:relative and overflow)

January 4th, 2010 CSS , (0)

以下代码将展示此问题:

<div id="container">
    <div id="a"></div>
    <div id="b"></div>
</div>

相关样式: Read more…

删除软件后 GConf 中无用项的清理

December 26th, 2009 System , , (0)

不知道大家有没有这样的经历,删除某个使用 GConf 的软件后,通过 gconf-editor 你会发现在左侧边栏中与它相关的内容仍然存在。

比如我使用 Archlinux 安装了 Compiz 后,它会在 GConf 的 /apps 中生成一些东东。删除 Compiz 后那些东东还是存在于 GConf 中,虽然这不影响使用,但看着还是挺不舒服的。Archlinux 下安装 iBus 然后卸载后也会出现这种情况。(呵呵,删除 ~/.gconf 也不顶用)

通过 Goolge 搜索一番,找到 gconf-cleaner 这个软件(呵呵,估计它已经处于半死不活状态)。怀着试一试的心态 yaourt -S gconf-cleaner 安装了这个软件,可惜使用后还是不能解决上面的问题。

想一想,这种情况肯定是系统某处对那些东西进行了缓存,又 Goolge 之,终于找到一个方法可以解决上面出现的问题(可在 Archlinux 中使用,其他发行版也可,但需要自己更改相应路径)。
Read more…

Sql Server 经典分页方法

December 4th, 2009 Database , (0)

特点:一次查询,数据库只返回一页的数据。而不是取出所有的数据。
说明:
pagesize: 每页显示记录数
cureentpage:当前页数

SELECT * FROM (   
SELECT TOP pagesize * FROM ( 
SELECT TOP pagesize*cureentpage   * FROM user_table   ORDER BY id ASC 
) AS aSysTable   ORDER BY id DESC 
) AS bSysTable   ORDER BY id ASC

原理如下:

先按照id从小到大升序取出30条记录(3*10),也就是:id 在 1-30 之间的记录 (SELECT TOP 30 * from user_table ORDER BY id ASC)

然后按照ID降序排列这30条记录,得到记录为id 在:从30到 1

然后在这些30条记录中取出前10条记录:取得的记录为:id 在30-21之间。这就是我们需要的数据,但这时是按照降序排列的,不符合要求。

最后在重新排序得到最终我们需要的数据。id在21-30之间。

解决Ubuntu Karmic(9.10)eclipse按钮失效问题

November 2nd, 2009 Java , (0)

昨天装了9.10,今天用eclipse的时候发现导入项目时点finish按钮没反应,起初以为是我用ibm sdk的原因,折腾了一会儿发现所有的finish按钮点击都没反应,用google english搜了一把,原来是gtk eclipse的bug,还好有解决办法

export GDK_NATIVE_WINDOWS=1

然后再启动eclipse就可以解决了

或者修改eclipse的启动项

[Desktop Entry]
Encoding=UTF-8
Name=Eclipse 3.5
Exec=/bin/bash -c "export GDK_NATIVE_WINDOWS=1 ;'<path to eclipse>'"
Icon=eclipse.png
Categories=Development;Java;IDE
Version=1.0
StartupNotify=true
Type=Application
Terminal=0

快速修复Windows7启动项和引导文件bcdboot

October 31st, 2009 System (1)

用这个命令可以修复启动项,即使你的启动文件已经丢失。这个命令的作用就是把启动文件bootmgr和boot文件夹复制到活动分区并自动根据所安装的系统建立BCD启动项,由此看见修复启动项是多么的简单,再不用输bcdedit命令来一条一条的修复了,也不用备份bcd。当然这是在单系统的情况下,不知道双系统能否起到作用有待试验。

bcdboot x:\windows /s y:

x为系统盘,y为活动分区,一般指c盘
有了这个命令可以衍生出一种系统安装方法。
在PE下用imagex命令把系统盘里的install.wim释放到硬盘然后用bcdboot命令创建启动文件和启动项。这种方法安装系统非常干净,自我测试要比正常的光盘安装后占用的空间小,不知道是否准确,希望有更多的实验者说明一下。此方法适用与2008、Windows 7和2008R2。命令在Windows 7和2008r2的system32文件夹下

IE6 position:fixed bug (固定窗口方法)

October 27th, 2009 CSS (1)
html{
	background:url(fake.gif) no-repeat 0 0;/*这一行很重要,fake.gif这个文件可以随便写*/
}
body {
	margin:0;
	height:100%;
}
.fixed{
	position:fixed;
	width: 100%;
	height: 35px;
	line-height:35px;
	background: url(images/tabcontrol.gif);	
	_position: absolute;/*CSS属性前加_是对IE6的hack,*/
	_top:expression(eval(document.compatMode&&document.compatMode=='CSS1Compat')?documentElement.scrollTop:document.body.scrollTop);
}

Read more…

验证10位不重复数字的正则

October 7th, 2009 Java (0)

写法如下:
^(?!.*?(.).*?\1)[0-9]{10}$
java中要改写为:
^(?!.*?(.).*?\\1)[0-9]{10}$
示例:

Pattern p = Pattern.compile("^(?!.*?(.).*?\\1)[0-9]{10}$");
Matcher m = p.matcher("1234567890");
System.out.println(m.find());