簡體   English   中英

onClick:在Facebook上分享圖片

[英]onClick: share image on Facebook

我想在我的新網站上啟動Facebook共享器的圖像上設置一個onClick功能。

以下是一些可能有助於理解我所說的內容的代碼

<div id="mImageBox">
<img id='my_image' src='' width="auto" height="auto"/>
</div>

圖像src是空白的,因為它是由另一個JavaScript函數通過使用“my_image”注入的

所以,我嘗試使用此方法設置onClick函數:

<script>function fbs_click() {u=location.href;t=document.title;window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(u)+'&t='+encodeURIComponent(t),'sharer','toolbar=0,status=0,width=626,height=436');return false;}</script>

<div id="mImageBox">
<a rel="nofollow" href="http://www.facebook.com/share.php?u=<;url>" onclick="return fbs_click()" target="_blank"><img id='my_image' src='' width="auto" height="auto"/></a>
</div>

onClick函數運行良好,但它鏈接到img所在的頁面而不是img本身!

你有什么建議嗎?

試試這個:

<div id="mImageBox">
<img id='my_image' src='' alt='' width="auto" height="auto" onclick="fbs_click(this)"/>
</div>

<script>
     function fbs_click(TheImg) {
     u=TheImg.src;
     // t=document.title;
    t=TheImg.getAttribute('alt');
    window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(u)+'&t='+encodeURIComponent(t),'sharer','toolbar=0,status=0,width=626,height=436');return false;
}
</script>

對於JS禁用的情況,您不需要使用<a>標簽(圍繞<img>標簽),因為在這種情況下,應該注入src屬性的JS也不會起作用。

只需調用以下功能,您就可以在Facebook上與您的鏈接和文本共享圖像。

function sharefbimage() {
    FB.init({ appId: `your appid`, status: true, cookie: true });
    FB.ui(
    {
        method: `share`,
        name: 'Facebook Dialogs',
        href: $(location).attr('href'),
        link: 'https://developers.facebook.com/docs/dialogs/',
        picture: 'your image url',
        caption: 'Ishelf Book',
        description: 'your description'
    },
    function (response) {
        if (response && response.post_id) {
            alert('success');
        } else {
            alert('error');
        }
    }
);

自從上周以來Facebook上的Javascript API 2.9已經死了,上面的解決方案不再適用了(我花了半天時間才找到它!!!)。 在v2.10中,FB.ui的圖片參數不再存在。 但我找到了一種解決方法,為每個圖像生成一個單獨的URL參數,因此Facebook必須單獨為每個共享圖像刮取Open Graph數據。 我在這篇文章中分享了我的代碼供您參考。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM