JQM アコーディオン/折りたたみ可能なセットのコンテンツを動的に入力しようとしています。http://the-jquerymobile-tutorial.org/jquery-mobile-tutorial-CH20.phpを見てきましたが、例は古くなっているようです。だから私は実用的な例を考え出そうとしましたが、私は現在立ち往生していて、なぜこれがうまくいかないのかわかりません:
<script type="text/javascript">
$(document).ready(function() {
$(".mySet").bind('expand', function (event, ui) {
/* This prints e.g. "This is the first entry\n
I'm the collapsible set content for section 1." */
console.log($(this).text());
/* This should print "This is the first entry" (=the innerText of <h3>)
but it doesn't, it prints "This is the first entry\n
I'm the collapsible set content for section 1." as well */
console.log($(this).next().text());
/* This should just print "I'm the collapsible set content for section 1"
(=the innerText of <p>) but it doesn't, it prints e.g. "This is the
first entry\n I'm the collapsible set content for section 1." as well */
console.log($(this).nextAll("p").text());
});
});
</script>
<div data-role="collapsible-set">
<div data-role="collapsible" class="mySet">
<h3>This is the first entry</h3>
<p>I'm the collapsible set content for section 1.</p>
</div>
<div data-role="collapsible" class="mySet">
<h3>This is the second entry</h3>
<p>I'm the collapsible set content for section 2.</p>
</div>
</div>
なぜ jQuery が(=現在展開されている$(this)
を指している<div ...class="mySet">
? .)$(this)
$(this).next()
ご協力いただきありがとうございます!