0

jQuery を使用してモバイル サイトを開発しています。

特定のページを読み込んで目的のボタンをクリックすると、ページを更新するまでコードが実行されません。どうしてこれなの ?

これが私がそれを持っている方法です

script.js

$(document).ready(function() 
{ 
  $("#user-save").click(
      function(e)
       {
         alert(/clickity-click/);
       });
});

page.php

<html>
   <head>
       <!-- Other jQuery files here -->
      <script src="script.js"></script>
   </head>
<body>
   <div id="user-save" data-role="button">Click me like a boss</div>
</body>
</html>
4

3 に答える 3

3

この問題が発生しているページのコードを数時間かけて書き直しましたが、問題がリンク/前のページに関連していることに気付きました。

リンク/前のページのアンカー タグとリンク (確実に実行したいページにつながるもの) には、次のような属性$(document).ready(init)を含める必要があります。data-ajax="false"

<a href="yourpage.html" data-ajax="false"> 

これにより、AJAX を使用してコンテンツを動的にロードしていることを JQuery Mobile が予期せず、実際には別のページや新しいページに移動していることを確認できます。$(document).ready()つまり、JQuery Mobile は、別のページまたは新しいページをロードしている場合にのみ実行されます。

于 2013-05-22T01:44:32.803 に答える
3

JQuery Mobile は、「通常の」JavaScript アプリケーションとは異なる方法でページをロードします。通常、document.ready の代わりに pageinit イベントにバインドする必要があります。

このトピックに関するこの以前の SO ディスカッションを参照してください

于 2012-09-22T02:18:42.233 に答える
0

次の行を変更します。

  1. <script type='text/javascript' src="script.js"></script>
  2. alert('clickity-click');
于 2012-09-22T01:37:38.307 に答える