$arr = get_class_methods(__CLASS__);
print_r($arr);
- Nov 06 Wed 2013 10:20
[PHP] 取得 Class 已經定義的 method
- Nov 05 Tue 2013 16:19
[JavaScript] 從 event 物件取得觸發該事件的物件 id
event.currentTarget.id
- Oct 23 Wed 2013 14:17
[Solr] 預設 port 變更
請開啟 example/etc/jetty.xml
並尋找 <Call name="addConnector"> 區塊,應該會像底下這樣
<Call name="addConnector"> <Arg> <New class="org.eclipse.jetty.server.bio.SocketConnector"> <Call class="java.lang.System" name="setProperty"> <Arg>log4j.configuration</Arg> <Arg>etc/log4j.properties</Arg> </Call> <Set name="host"><SystemProperty name="jetty.host" /></Set> <Set name="port"><SystemProperty name="jetty.port" default="8983"/></Set> <Set name="maxIdleTime">50000</Set> <Set name="lowResourceMaxIdleTime">1500</Set> <Set name="statsOn">false</Set> </New> </Arg> </Call>
請把第 6 行的 port 8983 改成你要的 port 就可以了
- Oct 13 Sun 2013 00:10
[Apache] 指定網站的特定位置指向特定的目錄
請參考:http://linux.vbird.org/linux_server/0360apache.php#www_basic_basic
--
使用情境
假設我要在 http://localhost/phpMyAdmin 裡放 phpMyAdmin 的服務
但 phpMyAdmin 目錄我想不放在我網站的目錄,那麼可以這樣設定
- Oct 12 Sat 2013 16:39
[JavaScript] jQuery Plugin 的一個簡單練習:說明方塊
在這簡單做一個說明方塊的範例,點擊時會在該物件下面顯示方塊,點別的地方會消失
<html> <head> <title>jqury plugin</title> <style> #helpBox { position : absolute; padding : 5px; border-radius : 5px; border : 1px solid #ccc; z-index : 999; background : #eeF; } </style> <script type="text/javascript" src='jquery.js'></script> <script> (function($) { $.fn.helpBox = function (msg) { // 指定移除 box 的事件 var remove_this = function(event){$('#helpBox').remove(); } // 只能有一個 helpBox remove_this(); // 加上 box this.append("<div id='helpBox'>" + msg + "</div>"); // 指定位置 var position = this.position(); var size = this.size(); var x = position.left; var y = position.top + size.height; $('#helpBox').css({left:x, top:y}); // 註冊移除 helpBox 的事件 $(document).bind('click', remove_this); // 讓 jquery 可以繼續串接 return this; }; })(jQuery); $(function() { $('p, #content').bind('click', function (event) { event.stopPropagation(); $(this).helpBox('Hello World!'); }); }); </script> </head> <body> <div id='base' style='margin:0 auto; width:600px;'> <p>123123</p> <p>123123</p> <p>123123</p> <p>123123</p> <div id='content'>在這裡出現吧</div> </div> </body> </html>
這裡有幾點要注意的地方
- Sep 28 Sat 2013 14:36
[JavaScript] 物件導向寫法的筆記 (番外篇) 類似 jQuery 的宣告方式
請注意,這只是我個人的筆記,因為還沒有完全研究,所以如果內容有錯誤,請各位指正,謝謝
(比如說 jQuery 有用到 prototype 來定義物件,我這裡就還沒看懂是怎麼處理的)
--
<script> // 以 jQuery.trim 為例來建立類似 jQuery 的物件定義方式 // 只是類似而以,因為 jQuery 還有使用 prototype 的方式來定義 // 目前還沒有研究 // 以 my_jQuery 及 $$ 來命名 (function(window) { // private 的屬性及方法 var Version="0.0001"; // public var my_jQuery = { // 去除字串前後空白 trim : function(str) { return str.replace(/^\s+/, '').replace(/\s+$/, ''); }, // 傳回目前版本 version :function() { return Version; } }; // 直接在 window 定義物件(所以不用回傳值) window.my_jQuery = window.$$ = my_jQuery; })(window); // 這裡使用立即函式來定義 my_jQuery,請注意執行時將 window 當參數傳入 // 所以能直接在 window 下定義 my_jQuery,所以才不需要回傳值 // 也就是這樣,所以才能使用 .noConflict 的方式來放棄對 window.$ 變數的控制 //================== 測試 ========================== // 看看目前 my_jQuery 的定義 console.log("my_jQuery", my_jQuery); // 查看 my_jQuery 的版本 console.log("my_jQuery Version: " + $$.version()); // 測試 my_jQuery.trim var str = " 123 "; console.log("原始字串 = '" + str + "'"); str = $$.trim(str); console.log("trim 後字串 = '" + str + "'"); </script>
執行結果:
- Sep 25 Wed 2013 14:01
[jQuery] jQuery Template 筆記
1. $(id).tmpl(obj) 若 obj 是一個陣列結構,則會自動就同一個 tmplate 產生好幾個元素
這裡有一篇介紹的很清楚
http://stephenwalther.com/archive/2010/11/30/an-introduction-to-jquery-templates
- Sep 23 Mon 2013 13:37
[PHP] 好用的 parse_url 及 parse_str
<?php $url = "http://abc.com.tw/?mod=store&func=style_show&SR_NO=AIAE81"; $urls = parse_url($url); parse_str($urls['query'], $queries); /* 結果: parse_url = Array ( [scheme] => http [host] => abc.com.tw [path] => / [query] => mod=store&func=style_show&SR_NO=AIAE81 ) */ echo "<pre>parse_url = " . print_r($urls, TRUE). "</pre>"; /* 結果: parse_str = Array ( [mod] => store [func] => style_show [SR_NO] => AIAE81 ) */ echo "<pre>parse_str = " . print_r($queries, TRUE). "</pre>"; ?>
- Sep 20 Fri 2013 17:47
[JavaScript] 物件導向寫法的筆記 (二) 類似 Class 的宣告方式
這裡講的是類似 Class 的宣告方式,是因為 JavaScript 並沒有真的 Class,而是利用 function 來宣告
和一般的 Class 一樣要使用 new 來產生一個實體,以下是範例說明
--
<script src='jquery.js'></script> <script> // 以下範例為組合目前的網址 var Content = function(param) { // 宣告變數及預設值 this.link = (param.link) ? param.link : ''; // 連結 this.page = (param.page) ? param.page : 1; // 分頁 this.order = (param.order) ? param.order : ''; // 排序 // 取得連結 this.getLink = function() { return this.link + '?page=' + this.page + '&order=' + this.order }; // 物件處理,注意物件觸發時 this 會指向觸發事件的元素,所以要另外取得物件的值 // 導向網址 this.redirect = function(event) { // 取得自己 var _self = (event.data) ? event.data : this; // 換頁 window.location.href = _self.getLink(); }; // 綁定按鈕做換頁的動作 // 注意第二個參數,我把 this 傳進去 // 不然因為事件觸發的關係, redirect 的 this 會指向 #fmBtn $('#fmBtn').bind('click', this, this.redirect); } $(function() { // 初始化物件 var content = new Content( { link : 'http://localhost/', page : 2, order : 'account' }); // 呼叫物件的方法 // 結果為: http://localhost/?page=2&order=account console.log(content.getLink()); }); </script> <!-- 這裡會去呼叫 content.redirect 去換頁 請注意呼叫後 content.redirect 裡的 this 會指向 #fmBtn --> <input id=fmBtn type='button' value='按我換頁'>
--
但是上面的範例裡,因為 getLink 及 redirect 是直接定義的,所以每一個 new 出來的實體(instance)都會有一份
- Sep 20 Fri 2013 00:51
[JavaScript] 物件導向寫法的筆記 (一) 直接宣告物件
最近開始在研究 JavaScript 的物件導向寫法,發現 JavaScript 實在是太彈性了
很多用法很難以理解,不過卻很好用,看來不做點筆記,會完全記不起來,以下會寫好幾篇來記錄目前研究的心得
--
物件導向寫法的筆記 (一) 直接宣告物件