2016-04-13 6 views
1

私の質問:ゲームが完了したときに火災のジャバスクリプトイベント

私はフラッシュゲームを持っています。それに15の質問があります。正しい答えを得た各質問は、あなたに1つのコインを与えます。ゲームにはコインと経験を更新する関数があります:function updatePointsAndCoins_V2()

http://www.squlaworld.com/demo-english

  • 私は15コインを受信したときに表示されるオーバーレイに取り組んでいます。

CSS、HTML、JSファイルを含むフォルダにオーバーレイを作成しました。 function updatePointsAndCoins_V2()value = 15を返すと、これらのファイルをロードする方法はありますか?

  • もう1つの可能性は次のとおりです。 私は既にゲームのデフォルトの終了画面を持っています。ゲームが完了すると、機能が開始されます:function suggestedQuiz()。 オーバーレイファイルをロードする方法はありますか?

これは私が使用しているオーバーレイスクリプトです:あなたのページで

(function(showOverlay) { 
    var triggerBttn = document.getElementById('trigger-overlay'), 
     overlay = document.querySelector('div.overlay'), 
     closeBttn = overlay.querySelector('button.overlay-close'); 
     transEndEventNames = { 
      'WebkitTransition': 'webkitTransitionEnd', 
      'MozTransition': 'transitionend', 
      'OTransition': 'oTransitionEnd', 
      'msTransition': 'MSTransitionEnd', 
      'transition': 'transitionend' 
     }, 
     transEndEventName = transEndEventNames[ Modernizr.prefixed('transition') ], 
     support = { transitions : Modernizr.csstransitions }; 

    function toggleOverlay() { 
     if(classie.has(overlay, 'open')) { 
      var wrapperposition = document.getElementById('wrapperposition'); 
      wrapperposition.style.display = 'none'; 

      classie.remove(overlay, 'open'); 
      classie.add(overlay, 'close'); 
      var onEndTransitionFn = function(ev) { 
       if(support.transitions) { 
        if(ev.propertyName !== 'visibility') return; 
        this.removeEventListener(transEndEventName, onEndTransitionFn); 
       } 
       classie.remove(overlay, 'close'); 
      }; 
      if(support.transitions) { 
       overlay.addEventListener(transEndEventName, onEndTransitionFn); 
      } 
      else { 
       onEndTransitionFn(); 
      } 
     } 
     else if(!classie.has(overlay, 'close')) { 
      classie.add(overlay, 'open'); 
      var wrapperposition = document.getElementById('wrapperposition'); 
      wrapperposition.style.display = 'block'; 
     } 
    } 

    triggerBttn.addEventListener('click', toggleOverlay); 
    closeBttn.addEventListener('click', toggleOverlay); 
})(); 
+2

ていますか? – Yoda

+1

ゲームはフラッシュで行われます。ここにゲームへのリンクがあります:http://www.squlaworld.com/demo-english –

+0

それは最も確実にフラッシュです。おそらくこれに答える資格のある人物として "フラッシュ"というポストをタグ付けする価値は、JavaScript開発者ではなくフラッシュ開発者になるでしょう。 – Yoda

答えて

0

をあなたはフラッシュゲームを起動しようとしているメソッドを定義する必要があります。この場合は、updatePointsAndCoins_V2メソッドです。

だから、あなたのページでは、このような何かを追加することができます:あなたが点滅意味わから

<!-- language: lang-js --> // ignore this line, it's for stackoverflow syntax highlighting 
<script> 
    function updatePointsAndCoins_V2 (coins) { 
     console.log(coins); //look in the console to see what coins is 
     // With nothing to go on I'll assume it passes them as a number in the first parameter of the function 
     if (coins >= 15) { 
      showOverlay(); // You will need to define this function and the logic which shows your overlay. 
     } 
    } 
</script> 
+0

それは私に有効なjavascriptのように見えません。そのコードが何を期待していますか?あなたがフラッシュアプ​​リケーションのコインカウントをチェックしたいと思うように思えます。もし15であれば、上記の方法を使ってJavaScript関数をトリガーし、JavaScriptはオーバーレイを表示します。 – Yoda

+0

これはコンテナにロードされているため、Flashゲームを変更することはできません。私ができる唯一のことは、これらの機能を聞いて、値が15のときにオーバーレイを開始することです。 –

+0

ああ、あなたがフラッシュを変更できない場合は、少し違う問題があります。私が間違っていない限り、フラッシュアプ​​リケーションが具体的にJavaScript機能を起動しない限り、あなたはそれらのイベントを聞く方法がありません。私はあなたがゲームのソースにアクセスできるという前提で取り組んでいました。 – Yoda