2012年8月 的存档

Mac屏幕截图快捷键备忘

2012年8月26日 1 条评论

Mac下可以使用command+shift+3组合快捷键来把当前屏幕图像保存在桌面,如果只是需要某个特定的区域,可以用组合键command+shift+4,当按下后鼠标会变成一个十字,这时候就可以选取区域了,取消截图点击右键即可。另外当按下组合键command+shift+4后再按空格键,这时鼠标变成照相机图像,可以对某个窗口、菜单或Dock进行截图。

上述截图都是直接把图片保存到桌面,如果想把图片同时保留在剪切板中,只要在上述组合键的基础上加上一个control键盘即可。例如:command+control+shift+3就把当前屏幕图像保存到桌面,同时剪切板中也存在,可以粘贴到Photoshop中进行编辑了。

分类: 其它 标签: ,

js获取光标在输入框的位置

2012年8月21日 1 条评论

在js获取当前光标在输入框的位置,可以使用如下方法,兼容IE、chrome、firefox以及safari

function getCursortPosition(domObj) {
	var position = 0; 

	if (document.selection) {	//for IE
		domObj.focus();
		var sel = document.selection.createRange();
		sel.moveStart('character', -domObj.value.length);

		position = sel.text.length;
	} else if (domObj.selectionStart || domObj.selectionStart == '0') {
		position = domObj.selectionStart;
	}

	return position;
}
分类: web前端 标签:

chrome DNS 缓存

2012年8月21日 没有评论

有一次由于修改了hosts,造成chrome无法访问公网上的域名,似乎是chrome DNS 缓存问题。要查看chrome DNS 缓存,可以在浏览器中输入如下地址:

chrome://net-internals

里面包含了很多有用的东西,其中一项是DNS,你可以看到当前缓存的所以域名的DNS解析地址。

分类: 其它 标签: ,

IE 6使用float造成margin值双倍问题

2012年8月21日 没有评论

在ie6 下对于div的浮动,当设置了margin后,div可能占有的宽度是div的宽度加上两倍的margin值,解决此Bug只需要设置div的display属性为inline即可

分类: web前端 标签:

macbook pro 内存升级

2012年8月14日 没有评论

机器原配的4G内存真心不够用,开机使用一段时间,稍微多打开一些应用就慢的不行,经常看到那朵菊花。所有下定决心把内存升级为8G了。从使用半天的情况下来看,打开应用的速度明显加快,基本上没有出现卡的情况。还是比较满意的。没换之前使用预览打开qq对话框中别人发的图片,要好久才能出来,现在基本上一点就马上出来了。

内存和拆机的螺丝刀都是在京东上选的。内存选择的是金士顿 DDR3 1333 4GB 苹果(APPLE)笔记本专用内存,比普通贵几十块,也是考虑兼容性的问题,怕到时候出问题换货麻烦,不过也有人说这个也就是普通的金士顿然后在包装上加上了苹果专用,不过我收到的内存看上去有点旧的感觉,心想只要能用就算了。选螺丝刀到是花费我一番功夫,MBP后盖10颗螺丝需要用PH00型号的十字螺丝刀,似乎没有单独买的,只有套装里面有,而且大多6件套最小型号的是PH0(PH00更小),开始选择是史丹利金属6件套,看销量还不错,都已经下单了,后来看评论有人说不是太好,而且它最小型号也是PH0,后来发终于发现另一个六件套里面含有PH00的,取消订单后又重新下单了。网上看到很多人说由于螺丝刀的问题导致螺丝花掉了,所以比较重视这个。算好后来买的那个还行,比较轻松的拧下后盖的螺丝,顺利安装上内存了。方便准备升级的朋友,少走一些弯路,现把我购买链接放上来。声明:本人绝不是拖。

内存:http://www.360buy.com/product/386261.html
螺丝刀:http://www.360buy.com/product/618282.html

分类: 其它 标签:

mac os lion 恢复窗口

2012年8月14日 没有评论

mac os lion中有一项功能是恢复窗口,就是在退出应用时没有关闭窗口,下次启动应用时会再次打开这些窗口。例如在safari中打开了5个tab,使用command+q退出后,当下次启动safari时会再次打开这个5个tab。有些应用的偏好设置中提供是否恢复窗口的选项,例如chrome。

这项功能有好也有坏,例如使用excel打开了10来个文件,在没有全部关闭的情况下退出了,下次打开一个excle文件又都会帮你打开以前的,从而造成响应慢的问题。如果不想使用这项功能,可以在系统偏好设置中的个人、通用中把“退出并重新打开应用应用时恢复窗口”前的勾去掉。这样一来就所有的应用都没有这项功能。如果只是想某些应用不要这个功能,那么在退出该应用时养成习惯,先关闭所有已打开的窗口再退出应用。可以先狂按 command+w 一阵,再使用 command+q 退出应用。或者使用 command+option+q 来退出应用。

分类: 其它 标签:

mac os 下打开文件夹的快捷键

2012年8月14日 没有评论

用惯了Win的人可能知道,选中文件夹后按回车键就能打开文件夹,但是在mac下回车键是重命名文件夹或文件的。那在不用鼠标和触摸板的情况如何打开文件呢?有两个组合快捷键可以使用。第一种方法是 command + o;第二种方法是 command + ↓。另外 command + ↑可以进入当前目录的上一级目录。

从url中提取参数名和参数值

2012年8月12日 没有评论

在已知参数名的情况下,获取参数值,使用正则表达式能很容易做到。js的实现方法如下:

function getValue(url, name) {
	var reg = new RegExp('(\\?|&)' + name + '=([^&?]*)', 'i');
	var arr = url.match(reg);

	if (arr) {
		return arr[2];
	}

	return null;
}

如果想获取所有的参数名和其对应的值,同样也可以使用正则表达式的方法,js实现方法:

function getKeyValue(url) {
	var result = {};
	var reg = new RegExp('([\\?|&])(.+?)=([^&?]*)', 'ig');
	var arr = reg.exec(url);

	while (arr) {
		result[arr[2]] = arr[3];

		arr = reg.exec(url);
	}

	return result;
}

注意在js中用于匹配的还有一个叫match,match是字符串的方法,而exec是RegExp对象的方法。使用字符串的match方法,同时正则表达式指定为全局匹配,那么正则表达式中的分组将没有用,返回的结果是所有匹配正则表达式的子字符串。exec方法没有使用全局匹配标志时,返回的时间第一个匹配的子字符,如果使用了全局匹配标志,第一次执行从头开始匹配符号的字符串,再次调用,就从上一次匹配结果后开始匹配。

下面提供php的实现方法:

function getKeyValue($url) {
	$result = array();
	$mr = preg_match_all('/(\?|&)(.+?)=([^&?]*)/i', $url, $matchs);

	if ($mr !== FALSE) {
		for ($i = 0; $i < $mr; $i++) {
			$result[$matchs[2][$i]] = $matchs[3][$i];
		}
	}

	return $result;
}

php的preg_match_all方法把匹配的结果存放在第三个指定的参数中,是一个二维数组。第一维度是分组信息的数组,即第一个数组存放的是所有匹配的完整字符串,第二个数组存放的是第一个()对应的值得,第二维度是分组的值。

javascript 正则表达式两种定义方式

2012年8月12日 没有评论

javascript中使用正则表达式有两种方式。第一种是构建一个RegExp对象;第二种是使用”//”来定义,也即perl风格。例如:

var str = 'http://www.netingcn.com/';

var reg = new RegExp('http', 'i');
alert(reg.test(str));
或
alert(/http/.test(str));

上述例子就是使用两种方式判断字符串str中是否包含http,注意第二种方式 // 一定不能使用引号。

第一种方式生成对象是参数为字符串,所以可以动态(字符串拼接)的设定正则表达式的内容,第二种则不行。我们知道,正则表达式中有很多特殊字符,例如.,*,?等等,如果表达式中就是需要匹配这些特殊字符,那么就需要使用转义符 “\”。特别要注意的是第一种处理转义符时候,需要使用两个“\”。例如:

var str = 'http://www.netingcn.com/';

var reg = new RegExp('www\\.', 'i');   //此处使用了两个 \
alert(reg.test(str));
或
alert(/www\./.test(str));

那为什么要使用 \\ 来转义呢?因为第一种方式“编译”后还是会变为第二种方式。例如alert(new RegExp(‘www\\.’, ‘i’)) 结果是 /www\./i 。

ssh 连接慢的问题

2012年8月4日 没有评论

sshd服务中设置了UseDNS yes,当配置的DNS服务器出现无法访问的问题,可能会造成连接该服务器需要等待10到30秒的时间。由于使用UseDNS,sshd服务器会反向解析连接客户端的ip,即使是在局域网中也会。

当平时连接都是很快,突然变的异常的慢,可能是sshd服务的服务器上配置的DNS失效,例如DNS配置的是外网的,而此时外面故障断开。终极解决方案是不要使用UseDNS,在配置文件/etc/sshd_config(有些linux发行版在/etc/ssh/sshd_config)中找到UseDNS 设置其值为 no,如果前面有#号,需要去掉,重启sshd服务器即可。

分类: Linux 标签:

无觅相关文章插件,快速提升流量