• 締切済み

jQuery mobileのイベントについて

jQuery mobile 1.0で使えていたイベントが1.1.1で使えなくなりました。 何か仕様が変わったのでしょうか? よろしくお願いします。 例: $("div:jqmData(role='collapsible')").each(function(){  // ここが機能しなくなった bindEventTouch($(this)); }); function bindEventTouch(element) { element.bind('tap', function(event, ui) { if(element.hasClass('ui-collapsible-collapsed')) { } else { $('#' + element.attr('id') + 'l li').remove(); $('#' + element.attr('id') + 'l').append("<li>I'm Header #FF</li>"); } }); }

みんなの回答

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

mobileはまったく知りませんが(jQueryもたいして知らないけれど)… そもそも属性セレクタの記述って[ ]ではないのでしょうか? http://api.jquery.com/attribute-equals-selector/ mobile1.0と1.1.1のドキュメンテーションはこちらにあるみたいなので、違いを調べたいのなら… 1.0 http://jquerymobile.com/demos/1.0/ 1.1.1 http://jquerymobile.com/blog/2012/07/12/jqm-1-1-1/

macky310
質問者

補足

ご回答ありがとうございます。 こちらも始めたばかりで、よくわかっていないのですが、下記ページ例をそのまま使い開閉パネルの要素を動的に書き換えるscriptと使ってました。 http://stackoverflow.com/questions/8399882/jquery-mobile-collapsible-expand-collapse-event その後、alertを使い試したところ、tapイベントをbindできていないようです。 $("div:jqmData(role='collapsible')").each(function(){ alert("START"); // OK bindEventTouch($(this)); }); function bindEventTouch(element) { alert(element.attr('id')); // OK element.bind('tap', function(event, ui) { alert("TAP"); // NG <--------------------------- 表示されない if(element.hasClass('ui-collapsible-collapsed')) { } else { $('#' + element.attr('id') + 'l li').remove(); $('#' + element.attr('id') + 'l').append("<li>I'm Header #FF</li>"); } }); } 以上、よろしくお願いいたします。

関連するQ&A