JQuery - 获取更高级别项目的属性

标签 jquery

我正在尝试获取item1的ID,但它不会返回下面代码中的ID。有没有办法获取更高级别函数的ID?

我假设代码正在尝试获取popup的ID,但这既不需要也不存在。我可以获取上层函数的 ID 还是可以将其作为参数传递给下层函数?

$(".item1").live ("click" ,function(){
    $('.popup_pre_loading').css('display','none');
        $('.popup').fadeIn( 800, function(){
        alert((this).attr('id'));//need this for URL param
      });
      return false;
});

请注意,当警报框直接位于 item 的函数内时,此代码将起作用。

最佳答案

只需在外部函数中存储对 this 的引用,并在内部函数中引用它即可。

$(".item1").live ("click" ,function() {
    var self = this;
    $('.popup_pre_loading').css('display','none');
    $('.popup').fadeIn( 800, function(){
        alert(self.id);
    });
    return false;
});

请注意,您不需要 $(self).attr('id') - 只需 self.id 即可!

关于JQuery - 获取更高级别项目的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10351521/

相关文章:

javascript 存储数组值

javascript - 将小数加到百分比

javascript - Jquery/javascript : Select all the selected values from drop down

javascript - 如何将数据从jquery发送到javascript

javascript - 使用Jquery如何一键刷新CSS过渡效果?

javascript - 在 jQuery 中检测对具有不可预测 ID 的 DIV 的点击

jquery - 响应式设计更改菜单 jquery(或 css)对调整大小的影响

javascript - 在 jquery 中突出显示相似的 rel 属性

javascript - 在模糊的 iFrame 中使用 jQuery 热键

jquery - 悬停在无序列表内的 CSS 垂直 Accordion 翻转