Adobe Air & Adobe Flex & ActionScript & HTML5 & RIA & User Experience
在 Flex/Flash 中,滑鼠放在已啟用 HTML 功能之文字欄位中的超連結上,并不能像在瀏覽器的 status bar 看到其超連結的信息,我們無法判斷點下去之后跳轉的是否為一個值得信任和安全的網站,Flex/Flash 內的超連結安全問題由此而生,如何跟用戶良好的交互又是另外一個棘手的問題,下面是我的一個比較典型的解決方案。 獲取網址 目前為止,滑鼠放在 Flex/Flash 內的已啟用 HTML 功能之文字欄位中不會產生相應的事件,而按一下之后,會產生 flash.events.TextEvent.LINK 的事件,並且其中的 URL 是以 “event:” 開始時,便會傳送。 URL 在「event:」之後的其餘部分將會放置在 LINK 事件的文字屬性中。因此,可以在 TextEvent.LINK 上下功夫,值得注意的是,如果超連接不使用”event:”開頭,我們是無法獲取其中的URL的。 content.textArea.addEventListener(TextEvent.LINK, linkHandler); 建立信任網址列表 建立一個值得信任的網站列表,可以是一個 Array 或者一個 XML,一般值得信任的列表就應該是自己的網站。不過例子中我加了 Adobe,XD。 private var trustSites:Array = [{label: "RichMedia+", data: ‘richmediaplus.com’}, {label: "Adobe", data: ‘adobe.com’}]; 測試獲取的網址 測試獲取的網址是否在信任網址中,可以通過 URLUtil.getServerName(url:String):String 的方式可以獲取服務器名稱,然后通過正則表達式測試是否屬于信任網址。 private function isTrustWebSites(site:String):Boolean { [...]
VerifyError: Error #1107: The ABC data is corrupt, attempt to read out of bounds VerifyError: Error #1107: ABC 数据已损坏,尝试的读取操作超出范围。 今天遇到了 Adobe Flex VerifyError: Error #1107 的錯誤,囧了一天。 在網上搜了很多,貌似都沒有幾個合理的解釋,因此總結一下網上搜索的結果和自己的實際經驗來給大家分享下解決方案。 ————————————————- Class is too large, or contains too much large arrays http://forums.ilog.com/elixir/index.php?topic=858.0 Marc Said: It seems that the compiled actionscript class is too large, or contains too much [...]
今天算是完整得讀完了 SEO For Flash 這本書,雖然該書是第一本關于怎么SEO Flash方面的書籍,但內容方面并沒有讓我有很多的驚喜,還是我所知道的內容和方法,只是它作了一個比較好的總結,難免有些失望啊。下面就結合自己的經驗,重新整理一下對 Flex/Flash SEO 的方法。 替换内容(Alternative Content) html 中嵌入 swf 的 object 元素允許替換內容 (Alternative Content) 嵌套在其中,當用戶沒有安裝 Flashplayer 的時候,這些替換內容將顯示反饋信息給用戶。這些替換內容 (Alternative Content) 能被搜索引擎很好的識別,這使它成為一個對搜索引擎友好的網頁內容的好方法。無論是從用戶體驗出發,還是從 SEO 出發,務必應該在 swf 的嵌套中使用替換內容 (Alternative Content)。 XMP metadata in Flash CS4 Flash CS4 引進 XMP metadata 。 XMP (eXtensible Metadata Platform) 是一種以標準為依據的開放式技術, 可以擷取、保留和交換數位媒體與工作流程所用的 Metadata (指說明檔案的資訊)。XMP Metadata 存放了關于文件的各種訊息,用 Flash CS4 以上版本開發的 [...]
SWFAddress 雖然已經給予了 Flex/Flash 網站一部分 SEO 的優勢,但是它還是有局限性。 SWFAddress 的 deepLinking,都是帶有 # 號的。假設 A 和 B 都登陸 richmediaplus.com,那么,他們的 deepLinking 分別為 richmediaplus.com/index.htm#/a/ 和richmediaplus.com/index.htm#/b/ ,這樣的URL,特別是#的存在,無論對用戶還是網站的 SEO 來說,都不是很友好。DeepLinking 最理想的方式應該是 a.richmediaplus.com 或者 richmediaplus.com/b 這樣的URL方式。 結合泛域名解析,能解決我們所碰到的尷尬問題。泛域名解析指的是通過利用通配符 * (星號) 以實現所有的次級域名指向同一個地址。以上面的例子來說,我們可以利用泛域名解析將 a.richmediaplus.com 和 b.richmediaplus.com 同時指向 all.richmediaplus.com ,在實際的服務器目錄當中,大部分的內容只存在 all.richmediaplus.com 的目錄,URLs 地址是真實存在,但是服務器中并沒有真實的目錄。all.richmediaplus.com 中的文件會 parse 當前的 Virtual Unique URLs ,結合數據訪問 Server 端 告知是 a 用戶 還是 b [...]
速記! 加載外部的 Html & Css 在 Flex/Flash顯示出來,雖然直接的方法很少用到,但下面的內容畢竟也是一種方法呀! Flash Player 10 支持的 HTML 元素和屬性 Anchor tag <a/> Bold tag <b/> Break tag <br/> Font tag <font/> Image tag <img/> Italic tag <i/> List item tag <li/> Paragraph tag <p/> Span tag <span/> Text format tag <textformat/> Underline tag <u/> Flash Player 10 支持的CSS屬性 color display font-family font-size [...]