在链接悬停在AIR HTML控件上显示链接

问题描述:

有谁知道是否有一种简单的方法来捕获AIR HTML控件中的悬停链接url?就像在浏览器中一样,我希望URL在状态栏中显示,但我找不到在链接翻转时引发的任何事件。你是否需要检查并可能为此操纵DOM?在链接悬停在AIR HTML控件上显示链接

假设您使用的是mx:HTML或HTMLLoader,您可能必须编写一个自己的脚本来将DOM对象连接到AIR容器。这里有一种方法可以做到这一点 - 这里可能有更优雅的解决方案,但出于说明目的,这应该就足够了。

<?xml version="1.0" encoding="utf-8"?> 
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="1024" height="768" xmlns:html="flash.html.*" horizontalScrollPolicy="off"> 

    <mx:Script> 
     <![CDATA[ 

      private function container_complete(event:Event):void 
      { 
       addHTMLListeners(); 
      } 

      private function addHTMLListeners():void 
      { 
       var links:Object = container.htmlLoader.window.document.getElementsByTagName("a"); 

       for (var i:int = 0; i < links.length; i++) 
       { 
        if (links[i].href != "") 
        { 
         var href:String = links[i].href; 

         links[i].onmouseover = function():void { setStatus(this); }; 
         links[i].onmouseout = function():void { clearStatus() }; 
        } 
       } 
      } 

      private function setStatus(o:Object):void 
      { 
       status = o.href; 
      } 

      private function clearStatus():void 
      { 
       status = ""; 
      } 

     ]]> 
    </mx:Script> 

    <mx:HTML id="container" location="http://*.com/users/32129" width="100%" height="100%" complete="container_complete(event)" /> 

</mx:WindowedApplication> 

希望它有帮助!

+0

非常好,就是我在找的东西。谢谢基督徒! – 2009-02-10 18:31:23