如何动态更改href链接?

时间:2012-03-16 20:18:13

标签: javascript facebook

如何动态更改href链接?

<link rel="image_src" href="" id="ShareImageID"/>

这样当有人在Facebook上共享网页时,缩略图会显示该链接标记中的特定图像。

我不想更改每个页面的链接。

我也尝试使用og:image,但是我无法动态更改它。我也试过这个

<script>
var ShareImageIdVar = location.href.match(/\d+/);
document.getElementById('ShareImageID').href = 
        "http://www.mysite.com/Images/"+ ShareImageIdVar +".jpg";
</script>

但它无法正常工作:( Facebook仍在选择另一个缩略图。随机一个。

2 个答案:

答案 0 :(得分:1)

您无法使用JavaScript更改Facebook图像。当您在Facebook上共享链接时,Facebook会抓取寻找图像的页面。这个scrape不会运行JavaScript。

您可能需要更改图像服务器端,可能需要使用PHP。

答案 1 :(得分:0)

如果您希望Facebook在发布链接时选择正确的图像,则需要在php文件的<head>中选择正确的OpenGraph图像。

您可以在此处阅读有关开放图表的更多信息https://developers.facebook.com/docs/opengraph/

确保拥有所有必要的OG元素,以使其正常工作。

既然你在询问图像,你应该有这样的东西:

 <head>
 <meta property="og:image" content="/images/pageimage.png" />
 </head>

要动态更改它,只需使用特定于php页面的echo即可 编辑/喜欢这个:

<meta property="og:image" content="<?php echo "$imageurl" ?> />

只需在每个php页面上专门设置变量$imageurl