2011-04-20 62 views
2

我已经添加了以下位到我的CSS:从显示在图像上防止外部链接指示器图形

#content a[target^="_blank"] { 
    background-image:url(images/extlink.png); 
    background-repeat: no-repeat; 
    background-position: right; 
    padding-right: 12px; 
} 

这给所有打开的链接的一个小的外部链接指示灯(上看到维基百科)一个新窗口。问题是这也是为链接的图像做到这一点。显然,我不想在图像上显示该图形。任何人都有如何解决这个问题的想法?

编辑 有没有办法用jQuery做到这一点?

回答

2

如果您移动这些样式称为外部CSS类,这jQuery代码应该工作(未经测试):

$('a').each(function() { 
    if($(this).attr('target') == '_blank') && $(this).find('img').length == 0) { 
     $(this).addClass('external'); 
    } 
}); 
+0

我喜欢这个想法更加然后我在做什么。我试着通过下面的'jQuery('img')。parent().css('padding-right','0');'那是行得通的。我一直无法让你的工作,但我更喜欢你的方法。 – rmlumley 2011-04-22 16:54:25

+0

我只是不得不更新它,我得到它的工作。 – rmlumley 2011-04-22 18:24:46