外部链接图标

时间:2011-03-23 02:09:21

标签: javascript jquery

使用脚本,效果很好。它会弹出外部链接旁边的外部链接图标。 Whoopydoo ...并且还添加了target =“_ blank”属性。

我遇到的问题是,我不希望它在IMAGES上工作。

仅在文字链接上,所以任何sugestions。

jquery是:

(function(a){
a.fn.link_external_icon=function(p){
    var p=p||{};
    var icon_path=p&&p.icon_path?p.icon_path:"link_external.png";
    var n=a(this);
    n.find("a[target='_blank']").css("padding-right","13px").css("background-image","url("+icon_path+")").css("background-repeat","no-repeat").css("background-position","center right");
}

})(jQuery的);

脚本是:

<script language="javascript" type="text/javascript">
        $(function() {
            $("body").link_external_icon({
                icon_path:"../images/link_external.png"
            });
        });
    </script>

图片是:enter image description here

任何帮助表示感谢。

原始代码为:http://htmldrive.net/items/show/161/Link-external-icon-jQuery-plugin-for-show-external-linktarget_blank-icon.html

1 个答案:

答案 0 :(得分:1)

将选择器更改为...

n.find("a[target='_blank']:not(:has(img))");

jsFiddle

您的插件已修改

(根据评论中的要求。)

(function(a){
a.fn.link_external_icon=function(p){
    var p=p||{};
    var icon_path=p&&p.icon_path?p.icon_path:"link_external.png";
    var n=a(this);
    n.find("a[target='_blank']:not(:has(img))").css("padding-right","13px").css("background-image","url("+icon_path+")").css("background-repeat","no-repeat").css("background-position","center right");
}