Frage

In einer jquery mobilen Webseite, ich möchte ein Skript aufrufen, definiert in Script-Tags im HEAD-Abschnitt des jsp.

<head>

    <link rel="stylesheet" type="text/css" href="jquerymobile/jquery.mobile-1.0a1.min.css" />
    <script type="text/javascript" src="jquerymobile/jquery-1.4.3.min.js"></script>
    <script type="text/javascript" src="jquerymobile/jquery.mobile-1.0a1.min.js"></script>

    <script>

        $("#button").click( function()
           {
             alert('button clicked');
           }
        );
    </script>

</head>

<body>
    <html:errors/>

    <div data-role="page" data-theme='a'>

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

      <div data-role="content">
        <div id="button" data-role="button">Click on button</div>
      </div>

   </div>
</body>

Wenn die Button geklickt haben , ich möchte, dass die alert gezeigt werden. Aber es passiert nichts, wenn die Schaltfläche geklickt wird.

  

Kann mir jemand sagen, wo ich falsch gehe?

EDIT1:

Der folgende Code die Warnung bringt in Firefox & Opera Desktop-Browser .

  $(document).ready(function() {
      $("#vbutton").click(function() {
          alert("clicked");
      });
  });


  <a id="vbutton" data-role="button">Click Button</a>

Gibt es Gründe, warum die gleiche nicht Arbeit mit Opera Mobile & Fennec Browser - wo es zeigt den Fehler beim Laden der Seite Dialog ??

War es hilfreich?

Lösung 2

Das Problem war wegen Debug-Anweisungen wie

  

Debugger;

     

debug.info (....)

, die von Firefox / Firebug verstanden wurden, waren aber Probleme verursacht in Fennec & Opera Mobile Browser .

Andere Tipps

Ihr Problem ist, dass Sie für $('#button') suchen, bevor es ... existiert

Versuchen Sie, Ihren jQuery-Code in einem $(document).ready(function(){ ... }) oder seine Stenografie alias jQuery(function(){})

Die andere Option ist Ihre Initialisierung des Click-Ereignis auf die Schaltfläche aufzunehmen, bis der #button im DOM existiert. Mit anderen Worten, können Sie Ihr <script> Tag an den unteren Rand der Seite bewegen und es sollte funktionieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top