2013-06-27 73 views
0
javascript:(
    function(){ 
     window.twttr = window.twttr || {}; 
     var D = 550, 
     A = 450, 
     C = screen.height, 
     B = screen.width, 
     H = Math.round((B/2)-(D/2)), 
     G = 0, 
     F = document, 
     E; 

     if (C > A) { 
      G = Math.round((C/2) - (A/2)) 
     } 

     window.twttr.shareWin = window.open(
      'http://twitter.com/share?text=test+e(l.href)+'&t='+e(d.title)','','left='+H+',top='+G+',width='+D+',height='+A+',personalbar=0,toolbar=0,scrollbars=1,resizable=1'); 
     E = F.createElement('script'); 
     F.getElementsByTagName('head')[0].appendChild(E) 
    }()); 

這是代碼,它應該打開twitter鳴叫窗口,並且裏面必須填充頁面的網址。然而,當在谷歌瀏覽器中用作按鈕時,它什麼也不做,通過從javascript中刪除「?text =」,我得到了一個空白的推文頁面,這不是我想要的。 那麼如何解決它,所以它記下的網址和標題?像這樣: 標題 - 網址這個Javascript的「獲取URL和標題」有什麼問題?

文本的URL編碼

在此先感謝 「文本=?」。

回答

1

你缺少一個右撇號:

'http://twitter.com/share?text=test' 

與修復整個片段:

javascript:(function(){window.twttr=window.twttr||{};var D=550,A=450,C=screen.height,B=screen.width,H=Math.round((B/2)-(D/2)),G=0,F=document,E;if(C>A){G=Math.round((C/2)-(A/2))}window.twttr.shareWin=window.open('http://twitter.com/share?text=test'+e(l.href)+'&t='+e(d.title)','','left='+H+',top='+G+',width='+D+',height='+A+',personalbar=0,toolbar=0,scrollbars=1,resizable=1');E=F.createElement('script');F.getElementsByTagName('head')[0].appendChild(E)}()); 

漂亮代碼:

javascript:(
    function(){ 
     window.twttr = window.twttr || {}; 
     var D = 550, 
     A = 450, 
     C = screen.height, 
     B = screen.width, 
     H = Math.round((B/2)-(D/2)), 
     G = 0, 
     F = document, 
     E; 

     if (C > A) { 
      G = Math.round((C/2) - (A/2)) 
     } 

     window.twttr.shareWin = window.open(
      'http://twitter.com/share?text=test'+e(l.href)+'&t='+e(d.title)','','left='+H+',top='+G+',width='+D+',height='+A+',personalbar=0,toolbar=0,scrollbars=1,resizable=1'); 
     E = F.createElement('script'); 
     F.getElementsByTagName('head')[0].appendChild(E) 
    }()); 
+0

沒有注意到,我還缺少+ '?' ,因爲「?」是告訴它在裏面寫什麼的變量。 – thethiny