2010-03-03 3 views
1

간단한 컨베이어에서 작업하고 있습니다.플래시 액션 스크립트 2.0 일부 노드에서는 XML 구문 분석이 작동하지만 다른 노드에서는 작동하지 않습니다.

내 툴팁 하위 요소에 노드 값을 텍스트로 삽입하려고 할 때 내 문제가 나타납니다. 여기 내 XML의 :

<promotions>   
     <promotion> 
      <visuel>/papyrus/8a8b8d2e26fa35b60126faf90a4d002f-20100223141718.gif</visuel> 
      <remise>55</remise> 

      <libelle>produit 1</libelle> 
      <description>contenu test 1</description> 
      <dateDebut>22/02/2010</dateDebut> 
      <dateFin>10/03/2010</dateFin> 
     </promotion> 

     <promotion> 
      <visuel>/papyrus/8a8b8d2e26fa35b60126faf9a2f30032-20100223141750.gif</visuel> 

      <remise>15</remise> 
      <libelle>Pneus</libelle> 
      <description>Promo sur les pneus</description> 
      <dateDebut>01/03/2010</dateDebut> 
      <dateFin>01/05/2010</dateFin> 
     </promotion> 


     <promotion> 
      <visuel>/papyrus/8a8b8d2e26fa35b60126fafa1fa5003a-20100223141955.gif</visuel> 
      <remise>7</remise> 
      <libelle>produit 1</libelle> 
      <description>Test promo 1</description> 
      <dateDebut>10/01/2010</dateDebut> 
      <dateFin>10/03/2010</dateFin> 
     </promotion>   
</promotions> 

그리고 여기가로드 오른쪽 moviclip와 텍스트에 삽입 할 생각 년대 AS 2.0입니다.

xml.onLoad = function(success:Boolean) { 
    if(success) { 
     var nodes = this.firstChild.childNodes; 
     numOfItems = nodes.length; 
     for(var i=0;i<numOfItems;i++) 
     { 
      var t = home.attachMovie("item","item"+i,i+1); 
      t.angle = i * ((Math.PI*2)/numOfItems); 
      t.onEnterFrame = mover; 
      t.icon.inner.loadMovie(nodes[i].childNodes[0].firstChild);  
      t.promo= nodes[i].childNodes[1].firstChild.nodeValue; 
      t.produit= nodes[i].childNodes[2].firstChild.nodeValue; 
      t.dateDebut= nodes[i].childNodes[4].firstChild.nodeValue; 
      t.dateFin= nodes[i].childNodes[5].firstChild.nodeValue; 
      t.icon.onRollOver = over; 
      t.icon.onRollOut = out; 
     } 
} else { 
     trace("Unable to load XML"); 
    } 
} 

function over() 
{ 
    home.tooltip.promo.text = this._parent.promo; 
    home.tooltip.produit.text = this._parent.produit; 
    home.tooltip.tipDebut.text = this._parent.dateDebut; 
    home.tooltip.tipFin.text = this._parent.dateFin; 
    home.tooltip._x = this._parent._x; 
    home.tooltip._y = this._parent._y + (this._parent._height*0.15); 
    home.tooltip.onEnterFrame = Delegate.create(this,moveTip); 
    home.tooltip._alpha = 100; 
} 

결과는 내가, 텍스트 내용이 오른쪽 (노드 [libelle] 노드 [설명]) BUIT 노드가 포함 된 숫자를로드 (느릅 나무는 내가 제대로 가리키고 childNode에로드하고있어 의미) 나 각 GIF 사진을 보여 데 또는 날짜가로드되지 않습니다. 어디서 잘못 되었나요?

답변

1

코드를 실행 해 보았습니다. 그 코드는 저에게 적합합니다. 단, 요소가 무대에 어떻게 설정되어 있는지 추측 할 수는 있습니다.

어떤 것들은 내가 그랬어주의 :

  1. .gif 파일 각각에 대한 경로 나를 위해 잘 작동하지 않았다 /로 시작하지만, 당신이 말한대로, 당신을 위해 일하고 ...
  2. item0, item1, item2 무비 클립이 툴팁 클립 앞에 추가되므로 이미지가 텍스트를 흐릿하게 보입니까? (하지만 이것은 내 무대가 설정되는 방식 일 수 있습니다.)
  3. 이것은 바보 같은 질문 일 수 있지만 동적 텍스트 필드에 전체 문자 세트를 포함 시켰습니까? 그것은 글자가 나타나지만 숫자가 아닌 이유를 설명 할 수 있습니다.

또한 나는 당신의 mover, outmoveTip 기능이하는 것을 알지 못함 이니이다 (당신은 아마뿐만 아니라 그들을 게시 할 수 있습니까?).

희망이 그게 다야, 특수 문자를 삽입, 문제는 세 번째 제안이고,

+0

아니 ... 즉를 조금 도움 숫자. 나는 어제 일찍, 그 도움을 주셔서 감사합니다. 그래서 upvote, 그리고 고마워, 네가 맞았 어. – pixelboy

관련 문제