まず、クリック機能を次のように変更する必要があります。
$('._jsClick').on('click', function(event) {
alert('Hi!')
});
また、次のことを行う必要があります。
$('div:jqmData(role="page")').on('pagebeforeshow', function(){
$('._jsClick').on('click', function() {
alert('Hi!')
});
});
$('div:jqmData(role="page")').live('pagebeforeshow', function(){
$('._jsClick').on('click', function() {
alert('Hi!')
});
});
document.ready ではありません
このリンクをチェックしてください:リフレッシュ時だけでなく、jqueryモバイルの「pagebeforeshow」イベントを毎回発生させるにはどうすればよいですか。上記のコードは、 が呼び出されたとき$.mobile.changePage
に呼び出されます。
これは次のようになります。
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
navigator.geolocation.getCurrentPosition(onSuccess, onError);
$('div:jqmData(role="page")').die('pagebeforeshow');
$('div:jqmData(role="page")').live('pagebeforeshow', function(){
$('._jsClick').off('click');
$('._jsClick').on('click', function() {
alert('Hi!')
});
});
}