1

<a href="#feed-49">This is a FEED</a>jqtouch と iui で、次のようなリンクをたどり、コンテンツを動的にロードしたい場合はどうします<div id="feed-49"></div>か?

「a」と親の「div」にクリックハンドラーをバインド/ライブしようとしましたが、実際にリンクをたどるためのイベントだけが発生することはありません。ありがとう。

これは私の他の質問の簡略版です:

jqtouch モバイルアプリの ajax 読み込みの問題

4

2 に答える 2

0

私はあなたが経験していることを通り抜け、それを解決する方法を正確に知っています。そのXMLを[0]、[1]などの番号が付けられるJSONオブジェクトに変換する必要があります。

このJQueryプラグインは機能しますhttp ://www.fyneworks.com/jquery/xml-to-json/そのJSをアプリに追加します。次に、XML解析関数は、必要なXMLノード(チャネル内のアイテムノードなど)をJSONオブジェクトに変換し、アイテムに番号を付けます。

それでは、現在のアイテムのリストを空にし、アイテムのリストを作成し、「sun」のクラスを持つカスタムCLICK関数をリストアイテムに追加する方法を見てください(私はjqueryが大好きです)。次に、その関数は、その親ノードのタイトルと説明を、それを必要とするdivに追加します。hrefは、すべての詳細情報を処理する新しいjqtouchDIVにプッシュします。かっこいい?これがうまくいけば私に投票してください。それは私にとって魅力のようでした。

function parseXml(xml)
{ 
  $('#feedList').html('');
  var rss = $.xml2json(xml); 
  $.each(rss.channel.item, function(i, item)
    { 
    $('#feedList').empty().append('<li class=sun'+i'><a href=#contentDiv>'+item.title+'</a></li>'); 
    $('.sun'+i).click(function() {
      $('#titleDiv').empty().append(item.title);                
      $('#descDiv').empty().append(item.description);   
      }); 
   }); 
};
于 2010-08-28T17:41:13.717 に答える
0

ページを事前にロードするか、オンデマンドでロードするかによって異なります。

プリロードしたい場合は、次のようにページに入力することをお勧めします$(document).ready

$(document).ready(function(){
    $('#feed-49').load('feed-49.html');
});

pageAnimationStartオンデマンドでロードする場合は、イベントをリッスンできます。

$('#feed-49').bind('pageAnimationStart', function(event, info){ 
    if (info.direction == 'in') 
        $(this).load('feed-49.html');
});

コールバック イベントに関する jQTouch のドキュメントを読むことをお勧めします。

于 2010-08-19T13:11:45.007 に答える