JSONファイルからデータを取得してから、jquerymobile構造に続くdata-roleなどのhtml構造で表示します...データを取得して表示する方法に関するコードは次のとおりです。
$(document).on('pageinit', function(){
$.getJSON("http://danielvivancos.com/edu/wordpress/?json=get_posts&post_type=product", function(data){
var html = "";
$.each(data.posts, function(index, d){
html = html + "<li><a href='" + d.slug + "' data-transition='slidedown'><img src='" + d.thumbnail_images.thumbnail.url + "' /><h3 class='ui-li-heading'> Menu" + index + "</h3></a></li>";
});
html= "<ul data-role='listview' data-inset='true'>"+ html + "</ul>";
$(html).appendTo(".choice_list");
}).error(function(jqXHR, textStatus, errorThrown){ /* assign handler */
/* alert(jqXHR.responseText) */
alert("error occurred!");
});
});
HTML での出力は次のとおりです。
<li><a href="link1.HTML" data-transition="slidedown"> <img src="source1"><h3> Menu1</h3></a></li>
<li><a href="link2.HTML" data-transition="slidedown"> <img src="source2"><h3> Menu2</h3></a></li>
<li><a href="link3.HTML" data-transition="slidedown"> <img src="source3"><h3> Menu3</h3></a></li>
しかし、私の問題は、jquerymobile が言うようにコンテンツを表示しても、適用されるべきスタイルがそうではないことです。jquerymobile スクリプトによって追加されたすべてのクラスが、javascript で生成された html に追加されていないことを意味します。どうすれば修正できますか?jquerymobile からスタイルを保持するにはどうすればよいですか? よろしくお願いします!
答え:
$(html).appendTo(".choice_list").listview();