2014年2月25日 星期二

HTML 顏色代碼 (十六進位值色碼)

black
#000000
aliceblue
#f0f8ff
cadetblue
#5f9ea0
lightyellow
#ffffe0
coral
#ff7f50
dimgray
#696969
lavender
#e6e6fa
darkcyan
#008b8b
lightgoldenrodyellow
#fafad2
tomato
#ff6347
gray
#808080
lightslategray
#778899
teal
#008080
lemonchiffon
#fffacd
orangered
#ff4500
darkgray
#a9a9a9
slategray
#708090
seagreen
#2e8b57
wheat
#f5deb3
red
#ff0000
silver
#c0c0c0
darkslategray
#2f4f4f
darkolivegreen
#556b2f
burlywood
#deb887
crimson
#dc143c
lightgrey
#d3d3d3
lightsteelblue
#b0c4de
darkgreen
#006400
tan
#d2b48c
mediumvioletred
#c71585
gainsboro
#dcdcdc
steelblue
#4682b4
green
#008000
khaki
#f0e68c
deeppink
#ff1493
white
#ffffff
royalblue
#4169e1
forestgreen
#228b22
yellow
#ffff00
hotpink
#ff69b4
snow
#fffafa
midnightblue
#191970
mediumseagreen
#3cb371
gold
#ffd700
palevioletred
#db7093
ghostwhite
#f8f8ff
navy
#000080
darkseagreen
#8fbc8f
orange
#ffa500
pink
#ffc0cb
whitesmoke
#f5f5f5
darkblue
#00008b
mediumaquamarine
#66cdaa
sandybrown
#f4a460
lightpink
#ffb6c1
floralwhite
#fffaf0
mediumblue
#0000cd
aquamarine
#7fffd4
darkorange
#ff8c00
thistle
#d8bfd8
linen
#faf0e6
blue
#0000ff
palegreen
#98fb98
goldenrod
#daa520
magenta
#ff00ff
antiquewhite
#faebd7
dodgerblue
#1e90ff
lightgreen
#90ee90
peru
#cd853f
fuchsia
#ff00ff
papayawhip
#ffefd5
cornflowerblue
#6495ed
springgreen
#00ff7f
darkgoldenrod
#b8860b
violet
#ee82ee
blanchedalmond
#ffebcd
deepskyblue
#00bfff
mediumspringgreen
#00fa9a
chocolate
#d2691e
plum
#dda0dd
bisque
#ffe4c4
lightskyblue
#87cefa
lawngreen
#7cfc00
sienna
#a0522d
orchid
#da70d6
moccasin
#ffe4b5
skyblue
#87ceeb
chartreuse
#7fff00
saddlebrown
#8b4513
mediumorchid
#ba55d3
navajowhite
#ffdead
lightblue
#add8e6
greenyellow
#adff2f
maroon
#800000
darkorchid
#9932cc
peachpuff
#ffdab9
powderblue
#b0e0e6
lime
#00ff00
darkred
#8b0000
darkviolet
#9400d3
mistyrose
#ffe4e1
paleturquoise
#afeeee
limegreen
#32cd32
brown
#a52a2a
darkmagenta
#8b008b
lavenderblush
#fff0f5
lightcyan
#e0ffff
yellowgreen
#9acd32
firebrick
#b22222
purple
#800080
seashell
#fff5ee
cyan
#00ffff
olivedrab
#6b8e23
indianred
#cd5c5c
indigo
#4b0082
oldlace
#fdf5e6
aqua
#00ffff
olive
#808000
rosybrown
#bc8f8f
darkslateblue
#483d8b
ivory
#fffff0
turquoise
#40e0d0
darkkhaki
#bdb76b
darksalmon
#e9967a
blueviolet
#8a2be2
honeydew
#f0fff0
mediumturquoise
#48d1cc
palegoldenrod
#eee8aa
lightcoral
#f08080
mediumpurple
#9370db
mintcream
#f5fffa
darkturquoise
#00ced1
cornsilk
#fff8dc
salmon
#fa8072
slateblue
#6a5acd
azure
#f0ffff
lightseagreen
#20b2aa
beige
#f5f5dc
lightsalmon
#ffa07a
mediumslateblue
#7b68ee

2014年2月22日 星期六

Trying to construct all possible strings from 2~8 bases [ATCG]

function show(response, div){
  var div = div || 1;
  $('.show'+div).html(response);
}

/**
 *  函數名稱 ATCG_Factory
 *  輸入預定要產生的ATCG隨機排列組合數目產生ATCG所有的組合ARRAY
 *
 * @hope_times ATCG的組合指定的次數 2~8的number
 */
result = ATCG_Factory(3);
show(result.join('\n|'));

/**
 *  函數名稱 ATCG_Storge
 *  轉換成ARRAY儲存空間
 *
 * @dealwith ATCG的組合指定的次數
 */
show_stroge = ATCG_Storge(result);

var html='';
for(var key in show_stroge){
    html += key+"=>"+show_stroge[key]+"<br />";
}
show(html, 2);
//alert(result4.length);
function ATCG_Factory(hope_times, callback_base, callback_times){
        
        var base = ['A','T','C','G'];
        //若傳入1則回傳ATCG標準的一組組合
        if(hope_times==1){
            return base;
        }
        //限制一下要求排列組數
        if(hope_times>=9){
            alert("超出系統負荷範圍,請輸入介於2~8的number");
            return;
        }
        //Recursion 用
        var callback_base = callback_base || base;
        var callback_times = callback_times || 2;
        
        //新排列array的count數
        var new_count = Math.pow(4,callback_times);
        //被增加佇列的總長度
        var part_spread = callback_base.length;

        //show(callback_base.join('\n|'));        
        var new_array_input =[];
         //新array四等份
        var part = new_count/4;
         //算出4等份區間
        var part1 = part*1;
        var part2 = part*2;
        var part3 = part*3;
        var part4 = part*4;
        for (i=0; i<new_count; i++){
             
             if(i<part1){
                 //根據餘數來決定置入新array位置 請自行意會
                 new_array_input[i] = 'A'+callback_base[i%part_spread];
                 continue;
             }
             if(i>=part1 && i<part2){
                 new_array_input[i] = 'T'+callback_base[i%part_spread];
                 continue;
             }             
             if(i>=part2 && i<part3){
                 new_array_input[i] = 'C'+callback_base[i%part_spread];
                 continue;
             }
             if(i>=part3 && i<part4){
                 new_array_input[i] = 'G'+callback_base[i%part_spread];
                 continue;
             }
        }
        //判斷是否Recursion
        if(hope_times > callback_times){
            var continue_run = ATCG_Factory(hope_times, new_array_input, callback_times+1);
            if(continue_run) return continue_run;
        } else {
            return new_array_input;
        }
    
}
function ATCG_Storge(dealwith){

    var stroge_array = [];
    for(var key in dealwith){
        stroge_array[dealwith[key]] = "儲存空間";
    }
    return stroge_array; 
}

2013年12月24日 星期二

MC美江兔隨手畫


最近MC美江超紅,順手畫了這張應景,大家聖誕節快樂!!

2013年8月5日 星期一

php 將array弄亂(取代mysql order by rand()的簡易方法)

因為工作需要從肥大的文章資料表中找出資料並加以隨機排列
使用mysql 使用了以下的語法後
 "SELECT * FROM table ORDER BY rand() LIMIT 20"
 發現搜尋時間效益不彰,
因此將內容先行取出再隨機排列


<?php
//$article 為取得文章的array
//產生一組1~20的array
$numbers = range(1, 20);
//打亂此array
shuffle($numbers);
foreach ($numbers as $number) {
    echo $article[$number]['article_title'];
}

?> 

2013年5月6日 星期一

Facebook 按讚觸發事件

經常看到有文章必須點擊後才能觀看, 這是怎麼做到的的? 那就是取得該會員按讚的事件:

其中 edge.create 代表使用者按下讚時觸發的事件, edge.remove 代表使用者取消這個讚時的事件, 好了,僅此兩招妳就可以做一些邪惡的事情了!

2013年5月4日 星期六

取得Facebook按讚數(以PHP為例)

我們經常在網站中增加社群元件,比如說Facebook Like Button
我們透過以下工具產生按讚代碼 https://developers.facebook.com/docs/reference/plugins/like/
但怎麼取得按讚的數量呢?其實相當簡單,我們丟給facebook api請他回答給我們 預設回傳格式為xml
<?php
  $source_url = "www.example.com/xxx.html"; //想知道按讚數的網址
  $url = "http://api.facebook.com/restserver.php?method=links.getStats&urls=".urlencode($source_url );
  $get_xml = file_get_contents($url);
  $xml_result = simplexml_load_string($get_xml);
  $count = $xml_result->link_stat->total_count;
?> 
範例中我們取得的total_count為全部的按讚數(包含評論等等),請依實際需求使用。 
若是要改寫成json格式,也可以寫成這樣:
<?php
$fburl = 'www.example.com/xxx.html';
$json_string = file_get_contents('http://api.facebook.com/restserver.php?method=links.getStats&urls=' . urlencode($url));
//或是已知道該網址ids就可寫成 $json_string = file_get_contents('http://graph.facebook.com/?ids=' . $url);
$json = json_decode($json_string, true);
?> 
亦或是使用fql語法:
<?php
$fql  = "SELECT url, normalized_url, share_count, like_count, comment_count, ";
$fql .= "total_count, commentsbox_count, comments_fbid, click_count FROM ";
$fql .= "link_stat WHERE url = '".$url."'";
$apifql="https://api.facebook.com/method/fql.query?format=json&query=".urlencode($fql);
$fb_json=file_get_contents($apifql);
?> 

Jquery ajax 簡單範例(以PHP為例)

在實際開發網站時,ajax是經常被使用到的技巧,而jquery提供了一項簡單實現的方法,不囉嗦,直接看範例:

1.php的部分(desc.php)
我們預期它回覆一段文字

<?php
  echo "想要回覆的訊息!!!";
?> 
2.html及javascript的部分(ajax.html)
//引入jquery



這樣就行了嗎?是的,就是這麼簡單,僅僅幾行desc.php能夠收到ajax請求了 ,但我們如何檢驗呢?我們將程式碼改寫一下




假設情境:我們當然不可能沒事使用ajax,通常都會有所需求,因此要求參數要怎麼做呢? 這次我們加入參數,並將回傳內容顯示在某個div容器中


這樣就是最標準的GET傳遞了!有沒有覺得很熟悉? 而php的部分則改寫成這樣:
<?php
  if(isset($_GET['id'])){
    echo "我收到請求了";
  }
?> 
順利的話,你的網頁將成功透過Jquery ajax方法完成一次請求,並回傳訊息顯示於id名為div_name的div之中 若是多個參數你也可以這樣下:

更進階的話,可以使用jquery的.serialize()或是參數使用json格式 請自行參考其他高手的教學囉~小弟我獻醜了! 下一篇我將介紹其他的東東。