Asus ~ UX31A 使用感想2

感想2就沒啥好說的.........

第一就是觸控板非常不靈敏

不知道是不是程式沒寫好, 有時候去滑他

滑~~~~~沒反應....

這很明顯可以看出

我也看過有人反映~~~~~~顯然不只是我~~~~


再來就是螢幕的問題

色彩不鮮豔就算了~~~~~說實在畫面真的很難看

顏色很不飽和~~~~

但這不是重點

重點是........


平常上班~~要去吃飯了

start+L鎖定電腦

fn+f7讓螢幕暗下來..............

好像哪裡怪怪的

拉近點看.......

看出是甚麼了嗎...........要不要思考下~~答案在下面XD


















是鍵盤印...........幹...........................

他媽的蝦爆了.................................................................

所以平常的螢幕清潔=狗屁

反正蓋下去他會在幫你印上去

Javascript ~ sort array


var array = [[1, "grape", 42], [2, "fruit", 9]];
array.sort(function(a, b)
{
if (a[1] == b[1]) { return 0; }
if (a[1] > b[1])
{
return 1;
}
else
{
return -1;
}
});


reference
http://stackoverflow.com/questions/5503900/how-to-sort-an-array-of-objects-with-jquery-or-javascript

PHP ~ curl 使用感想XD

有些網頁

可能不是簡單的對他要求網址就會把他的網頁傳回來給你

雖然大多是這樣~

但有些網頁是要透過post傳資料後才回傳結果給你

如果想透過程式去抓取這些資料

則要模擬你發送這些資訊給對方server, 對方再回傳東西

如果用PHP可能可以用Peal的HTTP_Request2或是curl做到


但還有一種少數情況.....

不是假裝發post資料給對方server他就認你

我就遇到這問題.......

他還會看你是從哪裡來的

再看要不要傳資料給你

今天解決這問題也是我透過firebug監看網頁上操作時發送的資訊

才發現可以再嘗試多傳送這些參數給server看他認不認得出是正常使用者去瀏覽她的網頁

多次嘗試終於........我找到要多傳哪個關鍵參數給server

他才真的以為我是正常管道去讀取這網頁




我也是搞好久才發現到這個.....

就是Request Headers那一排

這邊firebug很清楚明瞭的列出傳了那些header過去

於是我才想到......可以不只傳post還可以傳假的header資訊給他試試看

過程我試了改 Agent, cookie, host, Referer

試到Referer

才成功............

因為不知道怎麼傳這些header參數所以也是一直google找資料= =

最後弄出來真的......好家在0rz


這邊我是用curl做的

才發現php的curl真的很強大,還可以亂真的XD

 curl_setopt($ch, CURLOPT_REFERER, 'http://www.xxxxx.com.tw/ggggggxxxx');

這段code就是傳header跟server說我是從哪裡來的

如果沒傳, 他就以為你亂搞

可是有傳~~~~他就覺得你是正常人~~~~才回傳資料給你

CKEditor ~ min height

var config ={
extraPlugins : 'autogrow',
removePlugins : 'resize',
defaultLanguage :'zh',
autoGrow_minHeight : 20,
toolbar : [
{ name: 'document', items : [ 'Source' ] },
{ name: 'clipboard', items : [ 'Cut','Copy','Paste','PasteText','PasteFromWord','-','Undo','Redo' ] },
{ name: 'basicstyles', items : [ 'Bold','Italic','Underline','Strike','Subscript','Superscript','-','RemoveFormat' ] },
{ name: 'links', items : [ 'Link','Unlink','Anchor' ] },
{ name: 'insert', items : [ 'Image','Flash','Table','HorizontalRule','Smiley','SpecialChar','PageBreak','Iframe' ] },
{ name: 'styles', items : [ 'Styles','Format','Font','FontSize' ] },
{ name: 'colors', items : [ 'TextColor','BGColor' ] },
{ name: 'tools', items : [ 'Maximize', 'ShowBlocks','-','About' ] }
]
};

$('#schedulePanel textarea.editor').ckeditor(config);


reference
http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.dialog.dialogDefinition.html

PHP ~ use curl do POST

$toURL = "http://SomeDomain/SamplePath?SomeVar=XX";
$post = array(
"a"=>"123",
"b"=>"321",
);
$ch = curl_init();
$options = array(
CURLOPT_URL=>$toURL,
CURLOPT_HEADER=>0,
CURLOPT_VERBOSE=>0,
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_USERAGENT=>"Mozilla/4.0 (compatible;)",
CURLOPT_POST=>true,
CURLOPT_POSTFIELDS=>http_build_query($post),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
curl_close($ch);
echo $result;


source
http://blog.roodo.com/esabear/archives/16358749.html

Asus ~ UX31A 使用感想


鍵盤問題一堆......

爛得要命

雖然現在看似是好了~~~~但也很擔心哪天又再度發作

關於買這台NB發生的鍵盤問題~

ASUS Zenbook UX31A 鍵盤問題層出不窮
http://www.mobile01.com/topicdetail.php?f=233&t=3048723&p=1


再來是平常使用遇到個問題.....

Fn+F2無法關閉無線網路

莫名其妙的問題.......當我不想無線網路自動連上無線網路寧願用網路線比較快的時候

就遇到這問題~~~~我也是因為這種情況才發現的

無線網路根本關不了XD


可以發現右下方的無線根本沒反應.........


會發光的鍵盤XD

不知道是為那些特殊需求的使用者而設計

我個人一開始覺得很酷~~~但覺得浪費電馬上就把他關了

基本上我覺得很礙眼..........很沒必要= =

可是蠢的是.........關了他似乎不會記得我的設定一樣.....

每次開機他都自動亮起來

或是有時候電腦一段時間沒用螢幕自動關閉省電

這時候要回來用電腦~~~摸一下

鍵盤很神奇的自動亮起來了...........無言

然後我又要再手動把他的燈關閉

總之這動作我已經做了好幾百遍~~~煩




沒有Home, End, PageUp, PageDown鍵

其實這些按鍵有時候上網都會用到說

這就算了.......但我要寫程式呀XD

使用頻率雖然不高~~~~但也是會按到

但最悽慘的是上ptt的時候........這些鍵超常用 .......真的哭哭了0rz....

他要配合Fn+上下左右才可以變成這些鍵的功能~~~~講真的...很不習慣.....與其不去使用

因為牠的上下左右也異常難按


右邊的接口是個尷尬的地方

當插了電源~外接硬碟~外接螢幕


整個就是#@%%$#^$#%^&#^%@

但會提到這點的原因是

他的外接螢幕那轉接頭超鬆

我就是因為後來再把外接硬碟插進去~~~~他鬆鬆的

不小心就掉了......所以使用這項絕技要小心點~~~~要先喬好位置在插進去

插進去後還要小心線的走勢~~~免得把轉接頭推到一下就掉了XD



以上就是我使用這台NB一個月不到兩個月的感想......

至於其他都沒甚麼好說的~~~

速度上蠻快的~~~~因為是SSD = =

但美中不足就是記憶體才4G.........當初店家那臭老頭還說可以換RAM

狗屁...........哭哭

買這台NB真是悔不當初

應該先把壞的NB送修~~~~忍一忍~~~~買台Mac才對

phpQuery ~ remove tag in html

此範例為使用phpQuery進去把該物件的img標籤取代掉

然後再取html出來


$feature = pq('blockquote:eq(0)');
foreach ($feature->find('img') as $img) {
$img = pq($img);
$img -> replaceWith('');
}
$feature = pq($feature) -> html();

jQuery ~ move Table tr

$(document).ready(function(){
$(".up,.down").click(function(){
var row = $(this).parents("tr:first");
if ($(this).is(".up")) {
row.insertBefore(row.prev());
} else {
row.insertAfter(row.next());
}
});
});


reference
http://stackoverflow.com/questions/1569889/jquery-move-table-row

CKEditor ~ custom toolbar

var config ={
extraPlugins : 'autogrow',
removePlugins : 'resize',
defaultLanguage :'zh',
toolbar : [
{ name: 'document', items : [ 'Source' ] },
{ name: 'clipboard', items : [ 'Cut','Copy','Paste','PasteText','PasteFromWord','-','Undo','Redo' ] },
{ name: 'basicstyles', items : [ 'Bold','Italic','Underline','Strike','Subscript','Superscript','-','RemoveFormat' ] },
{ name: 'links', items : [ 'Link','Unlink','Anchor' ] },
{ name: 'insert', items : [ 'Image','Flash','Table','HorizontalRule','Smiley','SpecialChar','PageBreak','Iframe' ] },
{ name: 'styles', items : [ 'Styles','Format','Font','FontSize' ] },
{ name: 'colors', items : [ 'TextColor','BGColor' ] },
{ name: 'tools', items : [ 'Maximize', 'ShowBlocks','-','About' ] }
]

};

$('#schedulePanel textarea.editor').ckeditor(config);

Discuz ~ 修正編輯器嵌入影片網址問題

這問題就是user輸入不符規定的youtube網址

Discuz認不出她是啥東西

就直接把網址show出來而不是嵌入影片至文章


我的解決方法是改編輯器的javascript

早在user發文章之前就透過js把網址修改成Discuz認得出的youtube網址格式

網址例子
http://www.youtube.com/watch?v=U4UwoDtTAD4
https://www.youtube.com/watch?v=U4UwoDtTAD4
http://www.youtube.com/watch?feature=player_embedded&v=U4UwoDtTAD4
https://www.youtube.com/watch?feature=player_embedded&v=U4UwoDtTAD4
http://youtu.be/U4UwoDtTAD4

以上只有第一個符合可以正常顯示

下面4個都不行

所以做法就是用正規表示法抓出v的值再把這個v放到正規網址上就好

可是我正規表示法不熟....所以用很蠢的作法....

但可以working就好XD

修改static/js/editor.js裡

case 'vid':
裡面的input加入onblur事件
<input onblur="modifyVideoUrl(this)" type="text" value="" id="' + ctrlid + '_param_1" style="width: 220px;" class="px" />



新增function

function modifyVideoUrl(e) {
var v = jQuery(e).val();
v = v.replace('http://www.youtube.com/watch?v=', '');
v = v.replace('https://www.youtube.com/watch?v=', '');
v = v.replace('http://www.youtube.com/watch?feature=player_embedded&v=', '');
v = v.replace('https://www.youtube.com/watch?feature=player_embedded&v=', '');
v = v.replace('http://youtu.be/', '');
jQuery(e).val('http://www.youtube.com/watch?v=' + v);
}

LINQ ~ where clause example

dynamic labor = ctx.Qoo.Where(l => l.xxxID== xxxID).Select(l => l).ToList().Select(l =>
{
dynamic aaa = new ExpandoObject();
aaa.ooo= l.ooo;
aaa.yyy= l.yyy;
aaa.hhh= l.hhh;
return aaa;
}).ToArray();

reference
http://stackoverflow.com/questions/8663897/why-is-linq-wherepredicate-first-faster-than-firstpredicate

Windows ~ modify desktop path

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]

裡面有個Desktop值改成想要的路徑就是了

reference
http://www.pczone.com.tw/vbb3/archive/t-129170.html

Visual C++ ~ error C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS.

這問題是發生在用OpenCV的時候

裡面有段code使用fopen

但vs覺得他不安全就不給編譯= =

解決方法就是改Preprocessor Definitions

Project -> Properties(Alt+F7) -> Configuration Properties -> C/C++ -> Preprocessor ->
Preprocessor Definitions.

新增

USE_STANDARD_FILE_FUNCTIONS
_CRT_SECURE_NO_WARNINGS

就可以了


reference
http://darmawan-salihun.blogspot.tw/2011/07/crtsecurenowarnings-error-message-in.html

download Autoblog wallpaper javascript

會寫這支javascript是因為平常看autoblog的gallery

例如網址

http://www.autoblog.com/photos/2012-pagani-huayra-first-drive/#photo-5378629/

我都會邊看圖邊按下載桌布

DOWNLOAD WALLPAPER

這顆按鈕

可是這樣慢慢點慢慢看很費時間

後來我autoblog待看,下載的車就越積越多

0rz...............


我就想說乾脆叫程式下載就好

省時省力

而且抓下來的圖直接點了就可以看, 還是桌布size的圖片


就研究了一下他的gallery這支網頁的原始碼跟javascript

發現可以透過javascript一直跑回圈下載圖片

就自己寫了一隻js

之後進入網頁後開console貼上這段js給他run, 就可以開始下載了

超省時省力XD


var i = 0;
var totalItems = $('.thumbnails li').length;
var sleepSecond = 3500;
function xxx() {
if (i < totalItems) {
$('.thumbnails li:eq(' + i + ')').mousedown();
$('#gallery_wallpaper a').click();
i++;
setTimeout("xxx()", sleepSecond);
} else {
alert('over.')
}
}
xxx();



大致上就是每抓一次圖等待3.5秒在抓一次

抓取所有項目圖片項目的長度, 在一個一個觸發點下去項目的事件切換圖片後

在去處發點下載桌布的按鈕的程式