我试图找出为什么我的$(this)
从jQuery是不是在这种情况下工作:
<ul>
<li class="tabs-li-js ui-tabs-tab ui-tabs-active">
<a href="#fragment-1" class="anchor-tabs" id="ui-id-1">Online Investing</a>
</li>
<li class="tabs-li-js ui-tabs-tab">
<a href="#fragment-2" class="anchor-tabs" id="ui-id-2">Guided Investing</a>
</li>
</ul>
这是js函数:
var $tabsLiJs = $('.tabs-li-js');
var productDescriptionMob = function() {
$tabsLiJs.on('click', function(e) {
e.preventDefault();
$tabsLiJs.each(function(i, el) {
if ($(el).hasClass('ui-tabs-active')) {
$('[data-action="show'+i+'"]').show();
} else {
$('[data-action="show'+i+'"]').hide();
}
});
});
};
上面是这样的完美的作品。
正如你所看到的,在第二行有一个元素:$tabsLiJs
它有一个点击事件。然后,在.each
功能是我正在尝试添加$(this)
的情况下的问题。但它不起作用。
我想使用这个位置:
$(this).each(function(i, el) {
if ($(el).hasClass('ui-tabs-active')) {
$('[data-action="show'+i+'"]').show();
} else {
$('[data-action="show'+i+'"]').hide();
}
});
什么可能呢? 有什么建议吗?
没有'$(本)'在你的代码。此外,“不工作”是什么意思? – empiric
productDescriptionMob是否已从您的文档中调用? – Korgrue
'this'假设参考什么? – Hoyen