Fancybox pinterest按钮 - 如何将链接标题传递给引脚说明?

时间:2014-04-06 22:44:52

标签: javascript jquery fancybox

我发现这个问题如何将pinterest悬停按钮添加到FancyBox2 fancbybox pinterest jQuery 这很好用,我只是无法解决如何在引脚上添加描述?

var pinUrl = a.attr('href') + '?url='+ encodeURIComponent(location.href) 
                    + '&media='+ encodeURIComponent(img.attr('src'))
                    + '&description=' (what goes here??);

2 个答案:

答案 0 :(得分:0)

不熟悉API,但要适当添加description参数并保持编码,您可以这样做:

var pinUrl = a.attr('href') + '?url='+ encodeURIComponent(location.href) 
                + '&media='+ encodeURIComponent(img.attr('src'))
                + '&description=' + encodeURI('I am some string of text');

摘要:

function pinUrl(link, img, description) {
    return link.attr('href') + '?url=' + encodeURIComponent(window.location.href) + '&media=' + encodeURIComponent(img.attr('src')) + '&description=' + encodeURI(description);
}

//用法:

var myPinUrl = pinURL($("#somelink"), $("#someimage"), "Look at this cool text!");

//编辑: 如果您有一组包含可变信息的链接,您可以使用pinUrl函数,如下所示:

var pin_url_list = [];

$("#mydiv a").each(function() {
    pin_url_list.push( pinUrl( $(this), $(this).find("img.featured"), $(this).attr("title") );
});

答案 1 :(得分:0)

另一种方法:

您可以从链接的title属性获取说明(或使用data-caption属性),例如:

$(".fancybox").fancybox({
    helpers: {
        title: {
            type: 'inside'
        }
    },
    beforeShow: function () {
        this.title = this.title ?
            '<div class="myPint" style="height: 26px"><a href="http://pinterest.com/pin/create/button/?url=' + encodeURIComponent(document.location.href) +
            '&media=' + encodeURIComponent(this.href) +
            '&description=' + this.title + '" class="pin-it-button" count-layout="horizontal">' +
            '<img border="0" src="http://assets.pinterest.com/images/PinExt.png" title="Pin It" align="absmiddle"/></a>' +
            '<span> ' + this.title + '</span></div>' 
        :
            '<div class="myPint" style="height: 26px"><a href="http://pinterest.com/pin/create/button/?url=' + encodeURIComponent(document.location.href) +
            '&media=' + encodeURIComponent(this.href) +
            '&description='+$(this.element).data("caption")+'" class="pin-it-button" count-layout="horizontal">' +
            '<img border="0" src="http://assets.pinterest.com/images/PinExt.png" title="Pin It" /></a>' +
            '<span>&nbsp;</span></div>'
    }
});

<强> JSFIDDLE