2016-11-27 2 views
1

Ich habe eine HTML-Seite mit Divs in JQ Mobile.
Wie kann ich die JS-Funktion nur aufrufen, wenn sich der Benutzer auf der Seite befindet, die ich angegeben habe?
Zum Beispiel:Call Funktion von Seite in JQM

<!-- update page --> 
<div data-role="page" id="update"> 

    <div data-role="header"> 
    </div> 

    <div data-role="main" class="ui-content"> 
     <script type="text/javascript"> 
      ShowUsers(); 
     </script> 
    </div> 

     <div data-role="footer"> 
      <h1>© SpicyCanada 2016</h1> 
     </div> 

</div> 

<!-- menu manager page --> 
<div data-role="page" id="menuManager"> 

    <div data-role="header"> 
    </div> 

    <div data-role="main" class="ui-content"> 
     <script type="text/javascript"> 
      ShowMenu(); 
     </script> 
    </div> 

    <div data-role="footer"> 
    </div> 

</div> 

wenn ich will nur „Benutzeranzeigen“ nennen, wenn der Benutzer in „Update“ Seite und „ShowMenu“ nur nennen, wenn der Benutzer in „Menu Manager“ Seite, wie kann ich TU es?

Antwort

0

Zwei Schritte:

1) Zunächst identifizieren die richtige div mit:

var $page = document.querySelector('div[data-role="page"]'); 

2) Dann prüfen, ob die id des div ist menuManager:

if ($page.id === 'menuManager') { 

[... CONDITIONAL CODE HERE...] 

} 
+0

Diese Lösung nimmt immer die ID der ersten "div [data-role =" Seite "]" auf der Seite an. Es funktioniert nicht. –

+0

Ich bin nicht vertraut mit, wie jQuery Mobile funktioniert, aber Ihr Kommentar oben schlägt vor, dass jQM "Seiten" tatsächlich divs in einem einzigen übergeordneten Dokument sind (was mir hilft, das Markup-Layout in Ihrer Frage besser zu verstehen) - ist das richtig? – Rounin