我目前正在使用google plus按钮。 google plus返回的值取决于我头标记上的meta中包含的内容
我有一个使用g + 1提交的列表,但它是在标签下,这就是为什么我无法更新将在google plus上发布的内容
这些是我的代码
<meta itemprop="name" content="<?=$content?>">
<meta itemprop="description" content="<?=$description?>">
<meta itemprop="image" content="http://mysite/image.png">
下面的
是
<div> content to submit by g+1
<div class='g-plusone' data-size='medium' data-annotation='none'></div>
</div>
<div> content to submit by g+1
<div class='g-plusone' data-size='medium' data-annotation='none'></div>
</div>
<div> content to submit by g+1
<div class='g-plusone' data-size='medium' data-annotation='none'></div>
</div>
etc.
我怎样才能使用javascript,所以只要鼠标悬停在google plus按钮上,我就可以更新meta上的值?
喜欢
<div onmouseover='change_meta(x)' class='g-plusone' data-size='medium' data-annotation='none' ></div>
我已经知道如何在javascript函数上传递参数。我想知道的是,我需要在函数中包含什么才能更新元值。
<script language="JavaScript">
function change_meta(x) {
what do i need to do here?
}
</script>
答案 0 :(得分:2)
任何从您的服务器读取HTML的人都不会选择您在浏览器上更改的任何元标记标记。您需要更改服务器上的元标记才能使其生效,除非相关网站使用实际读取标记当前内容的书签。您使用的格式似乎是谷歌专有microdata format
也就是说,如果您需要更改标签,可以
var metas = document.getElementsByTagName("meta");
并循环查找所需的标记:
for (var i=0; i<metas.length; i++) {
if (metas[i].getAttribute("itemprop") &&
metas[i].getAttribute("itemprop")==="description") {
metas[i].setAttribute("content","new description");
}
}