2011-09-05 40 views
0

我见过一对夫妇的相似,我有什么问题,但没有解决方案,我见过的工作,包括Facebook的皮棉工具。我的Facebook生成的代码,模逃生(了window.location的),目前注释掉,并且是在什么几乎是光秃秃的JavaScript包括:为什么我的Facebook Like按钮被破坏?

document.write('<iframe src="http://www.facebook.com/plugins/like.php?app_id=142676242492854&amp;href=' + escape(url) + '&amp;send=false&amp;layout=standard&amp;width=450&amp;show_faces=true&amp;action=like&amp;colorscheme=light&amp;font=verdana&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:167px; height:40px;" allowTransparency="true"></iframe>'); 

或者基于皮棉工具的另一个:

document.write('<iframe src="http://www.facebook.com/plugins/like.php?href=' + escape(url) + " scrolling="no" frameborder="0" style="height: 62px; width: 100%" allowTransparency="true"></iframe>'); 

有几个调整的东西,我只是想要一个光秃秃的按钮,没有关于点击按钮的朋友的注释,但我并没有摆弄那个;我还有一个问题。

如果您按一下按钮,它改变了片刻,说你喜欢它;但是按钮的背景不会从浅灰色变为蓝色。此外,它不会穿过页面重新加载。

是否有代码我能/应更换以上的JavaScript与包括工作Like按钮?该网站是在http://JonathansCorner.com和代码行(注释掉)在全站JavaScript的包括。

回答

4

文件撰写是邪恶的,不使用它。

如果它是一个静态页面(该网站似乎是),那么只需添加的iframe在你想要的HTML的身体。

如果你真的想加入JS按钮客户端,使用JS SDK(https://developers.facebook.com/docs/reference/javascript),并添加按钮,像这样:

var dynLike = document.createElement('fb:like'); 
dynLike.setAttribute('href', myEncodedURL); 
dynLike.setAttribute('send', 'false'); 
dynLike.setAttribute('width', '450'); 
dynLike.setAttribute('show_faces', 'false'); 
document.body.appendChild(dynLike); // Or wherever you want it 
FB.XFBML.parse(); 
+0

我的网站是成千上万的静态页面和两个JavaScript包括通过使用大部分是静态页面。我希望按钮出现在包含的页面部分中。你确定手动添加按钮到2000页是不是比document.write()更邪恶? – JonathanHayward

+1

不,我是说,如果你想使用JavaScript来动态地添加类似按钮,在客户端使用JS SDK,而不是文件撰写 – mrtom

+1

这篇对你的工作? – mrtom