Вызов скрипта при нажатии кнопки - PullRequest
0 голосов
/ 24 ноября 2010

На мобильной веб-странице jquery я хотел бы вызвать скрипт, определенный в тегах скрипта в разделе HEAD 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>

Когда нажата кнопка , я хочу, чтобы предупреждение отображалось . Но при нажатии кнопки ничего не происходит.

Может кто-нибудь сказать мне, где я иду не так?

EDIT1:

Следующий код вызывает предупреждение в Firefox & Браузеры Opera Desktop .

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


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

Любая причина, по которой тот же не не работает с Opera Mobile & Браузеры Fennec - где отображается диалоговое окно Ошибка загрузки страницы ??

Ответы [ 2 ]

4 голосов
/ 25 ноября 2010

Ваша проблема в том, что вы ищете $('#button') до того, как он существует ...

Попробуйте обернуть ваш код jQuery в $(document).ready(function(){ ... }) или его псевдоним jQuery(function(){})

Другой вариант - включить инициализацию события нажатия на кнопку, пока ПОСЛЕ #button не появится в DOM.Другими словами, вы можете переместить свой тег <script> вниз страницы, и он должен работать.

0 голосов
/ 29 ноября 2010

Проблема возникла из-за операторов отладки, подобных

debugger;

debug.info (....)

, которые были понятыFirefox / Firebug, но вызывали проблемы в мобильных браузерах Fennec & Opera .

...