現在、jQuery Mobileの "pagebeforecreate"ページ初期化イベントを使用して、HTMLページにコンテンツを読み込みます。 jQuery Mobileのイベントについては、http://jquerymobile.com/demos/1.0a2/#docs/api/events.htmlを参照してください。コンテンツが同期して読み込まれ、本文に追加された後、jQuery Mobileはページをフォーマットします。ここでjQuery Mobile - ブラウザがjQuery Mobileイベントをサポートしているかどうかを確認する方法
は、jQueryのモバイルをサポートするブラウザで動作します私のコードです:
<!DOCTYPE html>
<html>
<head>
<title>jQuery Mobile Test</title>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a2/jquery.mobile-1.0a2.min.css" />
<script src="http://code.jquery.com/jquery-1.4.4.min.js"></script>
<script>
$('body').live('pagebeforecreate',function(event){
var ajaxContent = "";
$.ajax({
async: false,
type: "GET",
url: "test.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('item').each(function()
{
ajaxContent += '<li><a href="'+$(this).find('link').text()+'">'+$(this).find('title').text()+'</a></li>';
});
//alert(ajaxContent);
$('#menu').append(ajaxContent);
}
});
});
</script>
<script src="http://code.jquery.com/mobile/1.0a2/jquery.mobile-1.0a2.min.js"></script>
</head>
<body>
<noscript>You must have JavaScript enabled to view the content on this website.</noscript>
<div data-role="page">
<div data-role="header">
<h1>jQuery Mobile</h1>
</div>
<div data-role="content">
<ul data-role="listview" id="menu">
<li><a href="#">Static</a></li>
</ul>
</div>
</div>
</body>
</html>
、ここでは、XMLファイルです:ブラウザは「pagebeforecreate」をサポートしている場合
<?xml version="1.0" encoding="UTF-8"?>
<menu>
<item>
<title>Awesome Link from XML 1</title>
<link>http://www.google.com</link>
</item>
<item>
<title>Awesome Link from XML 2</title>
<link>http://www.gmail.com</link>
</item>
</menu>
どのようにして検出することができますjQuery Mobileイベント?または、このイベントが実行されたかどうかを検出する方法はありますか?このイベントが実行されない場合は、別の関数でXMLをロードする必要があります。 IE 8はjQuery Mobileをサポートしていませんが、XMLファイルを処理してリンクを表示したいと思っています。
ありがとう!それは素晴らしい作品です。私は "if(!$。mobile.gradeA())"をテストしてIE 8で動作します。 "$ .mobile.gradeA()"イベントに関するドキュメントはありますか?私はjQuery Mobileのウェブサイトでそれについて何も見ていませんでした。 – Greg
このページに戻る –