2011-06-10 134 views
0

自從我使用閃存以來,它已經過時了。我試圖完成的是使用變量作爲onRollOver事件的觸發器。 cname變量返回「AUS」,但它目前不工作。如果我使用Actionscript(2)問題

AUS.onRollOver 

它的工作原理

但是當我使用

cname.onRollOver 

失敗。對於n00b問題抱歉。

this[cname].onRollOver 

也沒有

我的完整代碼:

function loadXML(loaded) { 
    if (loaded) { 
     _root.country = this.firstChild.childNodes; 
     var cname = country[0].childNodes[0].firstChild.nodeValue; 
     var clink = country[0].childNodes[1].firstChild.nodeValue; 
     var cregion = country[0].childNodes[2].firstChild.nodeValue; 
     var ctext = country[0].childNodes[3].firstChild.nodeValue; 

     trace(cname); 
     trace(clink); 
     trace(cregion); 
     trace(ctext); 

     this[cname].onRollOver = function() { 
      var colorful = new Color(this); 
      colorful.setRGB(0x0099d9); 
      subline.text = ctext; 
     }; 
     this[cname].onRollOut = function() { 
      var colorful = new Color(this); 
      colorful.setRGB(0x939598); 
      subline.text = ""; 
     }; 
     this[cname].onRelease = function(){ 
      getURL(clink, _self); 
     } 
    } else { 
     content = "file not loaded!"; 
    } 
} 
xmlData = new XML(); 
xmlData.ignoreWhite = true; 
xmlData.onLoad = loadXML; 
xmlData.load("countries.xml"); 

我的完整的XML(countries.xml):

<?xml version="1.0"?> 

<countries> 
    <country> 
     <name>AUS</name> 
     <hyperlink>http://www.google.com.au/</hyperlink> 
     <region>australasia</region> 
     <infotext>Welcome to Australia</infotext> 
    </country> 
    <country> 
     <name>USA</name> 
     <hyperlink>http://www.google.com/</hyperlink> 
     <region>australasia</region> 
     <infotext>Welcome to America</infotext> 
    </country> 
</countries> 

回答

0

這個[CNAME] .onRollOver = //一些回調函數

+0

我試過這個,但它沒有工作ķ。 – etoxin 2011-06-10 01:37:15