スクロール リストで jquery touchwipe プラグインを使用してい
ますが、$(this) から属性を取得できません。誰もそれを修正する方法を知っていますか?
html:
<div id="main_list_wrapper">
<div class="item">
<div class="t7 edit"></div>
<div class="t8 cancel"></div>
</div>
<div class="item">
<div class="t7 edit"></div>
<div class="t8 cancel"></div>
</div>
<div class="item">
<div class="t7 edit"></div>
<div class="t8 cancel"></div>
</div>
<div class="item">
<div class="t7 edit"></div>
<div class="t8 cancel"></div>
</div>
<div class="item">
<div class="t7 edit"></div>
<div class="t8 cancel"></div>
</div>
</div>
スクリプト コード:
var $main_list_wrapper = $("#main_list_wrapper").find('.item');
$main_list_wrapper.touchwipe({
preventDefaultEvents: false,
wipeLeft: function() {
$(this).find('.t8.cancel').removeClass('show');
$(this).find('.t7.edit').removeClass('show');
var thisclass = $(this).attr('class');
alert(thisclass);
return false;
},
wipeRight: function() {
$sb(this).find('.t8.cancel').addClass('show');
$sb(this).find('.t7.edit').addClass('show');
return false;
}
});
alert(thisclass) と同様です。「未定義」と表示されます。
ありがとうございます。友人がこれを書いてくれました。うまくいきました。
$main_list_wrapper.each(function () {
var $this = $sb(this);
$this.touchwipe({
preventDefaultEvents: false,
wipeLeft: function() {
var $pcs = $this;
$pcs.find('.t8').removeClass('show');
$pcs.find('.t7').removeClass('show');
return false;
},
wipeRight: function() {
var $pcs = $this;
$pcs.find('.t8').addClass('show');
$pcs.find('.t7').addClass('show');
return false;
}
});
});