Jquery 使用嵌套的$(this)语句时获取.text()值
单击标记时,我希望获取所述链接的文本值,并将其放置在父项中另一个.current选项的内部。然而,我还需要淡出父级,让这种变化发生在视线之外,然后再将其与fadeIn一起带回来。我可以让它单独工作,但不能在淡出功能中放置文本更改 下面的代码获取父级的文本,而不是最初单击的标记。当这样筑巢时,我能做什么不同的事情 多谢各位Jquery 使用嵌套的$(this)语句时获取.text()值,jquery,function,Jquery,Function,单击标记时,我希望获取所述链接的文本值,并将其放置在父项中另一个.current选项的内部。然而,我还需要淡出父级,让这种变化发生在视线之外,然后再将其与fadeIn一起带回来。我可以让它单独工作,但不能在淡出功能中放置文本更改 下面的代码获取父级的文本,而不是最初单击的标记。当这样筑巢时,我能做什么不同的事情 多谢各位 $('.filter').on( 'click', 'a', function() { // Fadeout text to allow for hidden text
$('.filter').on( 'click', 'a', function() {
// Fadeout text to allow for hidden text change
$(this).parent.fadeOut(function() {
// Change text of the current selection to match the item just clicked (not working)
$('.filter').find('.current-selection').text($(this).text());
}).fadeIn();
});
将文本放入一个额外的变量中
$('.filter').on( 'click', 'a', function() {
var value = $(this).html();
$(this).parent().fadeOut(function() {
$('.filter .current-selection').text(value);
}).fadeIn();
});
为什么不在进入回调之前存储该值呢?请阅读$this-parent.fadeOut中的一个引用父元素,而不是onclick中$this引用的锚元素。根据@Rich point,使用var theAnchor=$this;在调用淡出函数并替换淡出函数中对$this的引用之前。感谢@VanquishedWombat-帮助解决问题的起点。干杯