HTML5 + JavaScript 做的 VNC Viewer == Guacamole
http://guacamole.sourceforge.net/
我的媽啊
HTML5 已經可以做到這樣了
用的技術就是 html5 + javascipt 而已 , 就可以做到 VNC 遠端桌面控制了
想必是有用到 WebSocket 的功能
http://guacamole.sourceforge.net/
我的媽啊
HTML5 已經可以做到這樣了
用的技術就是 html5 + javascipt 而已 , 就可以做到 VNC 遠端桌面控制了
想必是有用到 WebSocket 的功能
自從 Facebook , Plurk 流行起來 , Comet 技術才被受到重視 , 之前曾經搜尋了 Google 上各種有關 Comet 的資訊 , 其實早在 5 年前(西元2005)我就實作過了 , 當時是在一家叫互動王視訊科技的公司做了個股票看盤系統 , 就是類似 Comet 的技術 , 我在該公司任職前 , 已經有了一個股票看盤系統 , 也是類似 Comet , 我去了是把原本前人寫的 Perl 版寫的完全改成 PHP 版的 , 因此 Google 上搜尋到有關 Comet 的 WIKI 說 2006 出現了第一個 Comet 應用 (http://en.wikipedia.org/wiki/Comet_%28programming%29#First_Comet_applications) , 原來 , 這東西我及互動王的前人早就做過了 , 哈 !
但可能有人對 Comet 還不太了解是甚麼 , 其實 Comet 並不是一種制式的協定 , 這是一種概念 , 就如同 AJAX 也是種概念 , Comet 主要用意是要讓 Browser 得到即時的資訊並且做到雙向互動 , 但我們都知道 , Web Browser 是要 Client 端主動要求某個網址 , Web Server 才會送資料來 , 即便是 AJAX 概念也是如此 , 那麼如何讓 Client 端不斷接收即時資料呢 ?
其實寫這篇是有感於過往的工作經驗的感想啦 , 每個專案總是在有一個好的發想之後 , 但在執行面上一定會遇到阻礙而讓專案的執行過程不順利 , 進而導致專案進度Delay 或與預期的結果有差異 , 更差的是會導致責任的歸咎而讓許多人死在結果論之下 , 但有果必有因 , 找出這個因我認為更重要 , 如果沒有找出真正的問題點去加以改善 , 那麼會不會扼殺好人 , 甚至劣幣驅逐良幣 ?
過去我只有待過一家公司有做好 P.D.C.A 這種簡單概念的管理方式 , 這種方式是一種不斷的循環檢討方式 , 直到問題解決 , 當初年紀小 , 不懂得這個 P.D.C.A 的精隨 , 現在回想起來 , 這種簡單概念如果認真的落實去做 , 其實可以讓個人到部門到企業都可以慢慢的健全起來
介紹一個以中文影音的網站開發教學網站 , 我是不小心從 Visual Studio 開始頁看到的
這網站叫做邊學邊做系列影片 , ,網站目前的教學內容還不多但以後應該會越來越多 ,雖然教學文鍵還不多 , 但我看到裡面關於 JQuery 的教學挺不錯的 , 也有 Silverlight , 有興趣的人可以到下面的網址去參觀參觀
http://msdn.microsoft.com/zh-tw/asp.net/dd310332.aspx
如果無法正常觀看的朋友們 , 可能是沒有安裝 Silverlight , 因為所有影音教學都是透過 Silverlight 這個元件來播放的
前一篇介紹了 WP-CodeBox 效果 , 但在編輯文章上仍有不完美之處 , 要是可以不用手寫 <pre lang="xxx"> , 而可以直接在文章編輯的地方指定該段程式碼是屬於何種程式那這樣是不是很棒 !
由於我非常討厭 WordPress 的 TinyMCE , 因此我老早就把 WordPress 的文字編輯器改成 FCKEditor , 我用的外掛是叫 Dean’s FCKEditor for WordPress plugin , 下載網址如下
http://wordpress.org/extend/plugins/fckeditor-for-wordpress-plugin/
安裝方法就是解開後放到 plugin 目錄 , 然後去啟用即可 , 很簡單
接下來就是見證奇蹟的時刻了 !! 要如何在 FCKEditor 中也能很方便的直接將內文中的程式碼套用 WP-CodeBox 的樣式呢 ? 我們將一步步來做
網址 : http://code.google.com/p/jquery-api-zh-cn/downloads/list
原來有熱心的人翻譯了 JQUERY 的 API
真是太棒了 , 上面還有 DreamWeaver CS3/CS4 的外掛檔喔
dojo 要做 AJAX 方式的檔案上傳其實是透過 iframe 來實做才有辦法實做 , 因此 dojo 特別提供一組指令 dojo.io.iframe 方法很簡單 , 網頁範例如下
是這樣的 , 我最近用 dojo 來輔助設計版面布局有使用到 dijit.layout 下的很多元件可以做很炫的排版 , 當然使用這些元件的時候 ,瀏覽器會花比較多的時間來處理畫面 在 IE7要開始執行包含有 dijit.layout的網頁時候 , 一開始就會先顯示尚未編排好的版面 , 要等到 dojo 都解析完整個頁面重新排版的時候才會正常 , 因此Client 端會感受到畫面一開始是錯的,然後變正確,另一種說法是 , 畫面在瞬間內會跳 ….
而這些狀況 , FireFox ,Google瀏覽器都不會出現 , 這更讓我應證了 IE7 是個 … 嘿嘿嘿 …
好了 , 不管 IE7 效能怎樣 , 龜毛的我總是要求要更完美些 , 於是找一找 Google , 有人做出一種頁面一開始會顯示 progress bar 的動畫 , 然後用 fade in out 的方式再把頁面呈現出來 , 看一看人家實作的方式 , 其實正好解決我的問題 , 其實我的問題很簡單用下面的方式就可以解決畫面跳動的問題了
首先我們要建立一個長寬都是 100% 的絕對定位的 layer , 將這個 layer 設定 index 在很高層以覆蓋所有頁面 , 因此一開始畫面就是空的 , 最後再使用 dojo.addOnLoad 去執行關閉這個 layer, 於是 dojo 所重新排版的頁面就出現了
例如
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | <style> #overlay { background-color: #ffffff; width: 100%; height: 100%; index: 9999999; position:absolute; top:0; left:0; } </style> <script> function init_layout() { //設定 <div id="overlay"> 的 style 屬性以關閉這層 layer dojo.style( dojo.byId("overlay") , "display" , "none" ); } dojo.addOnLoad(init_layout); </script> <body> <div dojoType .... > <!-- 這是網頁原始內容 --> </div> <div id="overlay"></div> <!-- 這是用來覆蓋原網頁的 layer --> </body> |
其實很簡單吧 ^^ 雖然 IE7 還是要等差不 0.2 秒的白畫面才顯示出全部頁面 , 但至少比畫面跳動好了 , 而 FireFox 2.0 卻連白畫面都沒看到就直接顯示排版好的畫面了 , 真的是 ….
最新回應