2017-02-11 8 views
0

Ich bin neu im Codieren und versuche, eine App für eine Studie zu erstellen. Ich habe Probleme, ein Element auf der richtigen Seite meiner App mit Cordova und Xcode anzuzeigen. Grundsätzlich möchte ich am Ende meiner App eine anklickbare Telefonnummer anzeigen, und ich habe Probleme, das Element nur auf dieser Seite (und nicht auf jeder Seite der App) anzuzeigen. Ich habe herausgefunden, wie man das Element verstecken kann, aber jetzt kann ich es nicht an der richtigen Stelle erscheinen lassen. Hier ist mein HTML-Code:Anzeigen und Ausblenden eines Elements mit Cordova

<script> 
      function show(shown, hidden) { 
       document.getElementById(shown).style.display='block'; 
       document.getElementById(hidden).style.display='none'; 
       return false; 
      } 
    </script> 
    </head> 
    <body> 
     <!-- HTML Template --> 
     <body onload="app.initialize()"> 
      <div class="app"> 
      <div id="window"> 
       <div id="question"> 
       </div> 
       <div id="popup" style="display:none"> 
       Please call any of the below: 
       Phone System: <a href="tel:+1-800-555-5555" class="button button-positive">800-555-5555</a> 
       </div> 
    </body> 
</html> 

Ich habe versucht, die folgenden in meinem JS-Datei enthalten, aber es hat nicht funktioniert:

var $prehashval = ""; 
      function loop() 
      { 
       if (location.hash.slice(1)!=$prehashval) 
        hashChanged(); 

       $prehashval = location.hash.slice(1); 
       setTimeout("loop()", 100); 
      } 
      function hashChanged() 
      { 
       var $output; 
       switch (location.hash.slice(1)) 
       { 
        case "question": 
         document.getElementById('question').style.display = ""; 
         document.getElementById('popup').style.display = "none"; 
         break; 
        case "popup": 
         document.getElementById('question').style.display = "none"; 
         document.getElementById('popup').style.display = ""; 
         break; 
        default: 
         $output = location.hash.slice(1); 
       } 
      } 
      loop(); 

Ich habe auch versucht, den folgenden:

$("#popup").hide() 
$("#popup").display() 

Ohne Glück. Würde mich über jeden Hinweis freuen! Vielen Dank.

Antwort

1

Mit Hilfe von Freunden habe ich dieses Problem behoben! Ich fügte der .js-Datei den folgenden Code hinzu:

if (question.variableName === 'popup') { $ ('# popup'). Show();

Hoffe das hilft jemandem in der Zukunft!

Verwandte Themen