2017-02-23 143 views
3

我有Twitter按钮工作,但Facebook按钮不是。 Facebook弹出加载,但随后消失。 Chrome控制台中没有错误。带有动态URL和标题的Twitter和Facebook自定义分享按钮

HTML

<i onclick="fbs_click();" class="fa fa-facebook article-tab-sub"></i> 
<i onclick="twr_click();" class="fa fa-twitter article-tab-sub"></i> 

的Javascript

function twr_click() { 
    var twtTitle = document.title; 
    var twtUrl = location.href; 
    var maxLength = 140 - (twtUrl.length + 1); 
    if (twtTitle.length > maxLength) { 
     twtTitle = twtTitle.substr(0, (maxLength - 3)) + '...'; 
    } 
    var twtLink = 'http://twitter.com/home?status=' + encodeURIComponent(twtTitle + ' ' + twtUrl); 
    var x = screen.width/2 - 280/2; var y = screen.height/2 - 280/2; window.open(twtLink, '','height=280,width=280,left='+x+',top='+y); 
} 
function fbs_click() { 
    var fbsTitle = document.title; 
    var fbsUrl = location.href; 
    var maxLength = 140 - (fbsUrl.length + 1); 
    if (fbsTitle.length > maxLength) { 
     fbsTitle = fbsTitle.substr(0, (maxLength - 3)) + '...'; 
    } 
    var fbsLink = 'http://www.facebook.com/sharer.php?u=' + encodeURIComponent(fbsTitle + ' ' + fbsUrl); 
    var x = screen.width/2 - 280/2; var y = screen.height/2 - 280/2; window.open(fbsLink, '','height=280,width=280,left='+x+',top='+y); 
} 

回答

3

你不能正确形成fbsLink变量。我看了here,发现u属性应该只是url和title应该是分开的。下面是代码固定线路:

var fbsLink = 'http://www.facebook.com/sharer.php?u=' + encodeURIComponent(fbsUrl) + '&title=' + encodeURIComponent(fbsTitle); 
+0

这似乎从消失阻止它,但是现在它加载一个空白:约 – Xarcell

+0

NVM,失败的互联网连接。有用... – Xarcell