jQuery(this)和qtip无法正常工作

时间:2011-07-27 01:12:56

标签: javascript jquery api qtip

使用jQuery的qtip插件,我试图显示隐藏的值(已经渲染的颜色悬停在图标上。问题是它只抓取列表中的第一项并在qtip中显示。现在我知道通常答案是使用“this”选择器来定位它,但在这种情况下,它只是不起作用......

以下是代码:

jQuery('li dl dd.job_icons').qtip({
    content: {
      prerender : true,
      text: jQuery('li dl dd.job_icons').html()
    }
});

我也尝试过使用它,但没有运气:

text: jQuery(this).html()

要获得更清晰的图片,请查看this link并将鼠标悬停在图标上(某些图标有不同的日期,其他图标也应显示工资和公司名称图标)

提前致谢...

编辑:以下是呈现的html

<li class="job job-alt job-featured"> 
 <dl> 
  <dt>Type</dt> 
  <dd class="type"><span class="jtype full-time">Full-Time</span></dd> 

  <dt>Job</dt> 
  <dd class="title"> 
    <strong>
    <a href="http://rockstar.tinygiantstudios.co.uk/jobs/front-end-developer-2/">Front End Developer</a>
    </strong> 
  </dd> 

  <dt>Location</dt> 
  <dd class="location">Anywhere</dd> 

  <dt>Job Admin</dt>    
    <dd class="job_icons"> 
    <div class="job_icons_wrap"> 
     <span class="job_date_detail">7 Feb</span> 
     <a href="#" class="job_date_icon"></a> 

     <a href="http://tinygiantstudios.co.uk" rel="nofollow" class="job_lister_detail">Tiny Giant Studios</a> 
     <a href="#" class="job_lister_icon"></a> 

     <span class="job_salary_detail jtype 100000-and-above">100,000 and above</span>
     <a href="#" class="job_salary_icon"></a> 
 </div>    
 </dd> 
</dl> 
</li>

2 个答案:

答案 0 :(得分:4)

尝试每个()。它具有使用this的适当范围。

jQuery('li dl dd.job_icons').each(function() 
    jQuery(this).qtip({
        content: {
          prerender : true,
          text: jQuery(this).html()
        }
    });
});

答案 1 :(得分:0)

即使您已经使用Dennis的回答解决了这个问题,但我使用each()提出了这个问题,这可能会或可能不会帮助您获得所需内容:

jQuery('li dl dd.job_icons a[class$=_icon]').each(function() {
    var classToSearch = jQuery(this).attr('class').replace('_icon', '_detail');
    jQuery(this).qtip({
        content: {
            prerender: true,
            text: jQuery(this).closest('dd.job_icons').find('.' + classToSearch).html()
        }
    });
});