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.twubdg.tw/';

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

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

第一種方式生成對象是參數為字符串,所以可以動態(字符串拼接)的設定正則表達式的內容,第二種則不行。我們知道,正則表達式中有很多特殊字符,例如.,*,?等等,如果表達式中就是需要匹配這些特殊字符,那么就需要使用轉義符 “\”。特別要注意的是第一種處理轉義符時候,需要使用兩個“\”。例如:

var str = 'http://www.twubdg.tw/';

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 標簽:

無覓相關文章插件,快速提升流量

30选5怎么中奖