0

我在我的网站中包含了 Google+ 分享网址(不是 +1)。但是,它共享整个页面,而不是我要链接到的特定文章。我的文章标题有一个锚 id,但是当我将它添加到共享的 url 时,它没有选择它......

<a href="https://plus.google.com/share?url=http://mywebsite.com/pagetitle.html#anchorid" title="Google+" target="_new"></a>

页面的标志和简短的描述会显示出来,但它不会链接到特定的文章。

任何帮助将不胜感激!

4

2 回答 2

0

您需要使用共享按钮而不是共享 URL 才能与锚共享链接。即使是对锚点进行 URL 编码,也会导致它们从与链接共享的 URL 中被剥离。使用按钮时,指定 href 值以包含您需要的特定锚点。

如果需要共享链接,另一种方法是....

将在您的网站上实施锚点的替代方法。例如,使用http://mysite.com/?article=myarticleid,其中 myarticleid 与锚点相同,并在页面加载时检查(来源)。

function getParameter(param) {
            var val = document.URL;
            var url = val.substr(val.indexOf(param))  
            var n=url.replace(param+"=","");
            alert(n); 
}
var anchor;

function checkForAnchor(){
  anchor = getParameter("myarticle");

  // Do something with anchor, see code examples below.
}

window.onload = checkForAnchor;

然后在该 checkForAnchor() 函数的末尾添加一些 JavaScript,它将在加载时将页面滚动到正确的位置,或者只是跳转到锚点。

在 jQuery 中,您可能会像 ( source ) 一样为该效果设置动画:

jQuery('html,body').animate({scrollTop: jQuery('#' + anchor).offset()}, 1000);

在标准 JavaScript 中,您可以简单地更改位置并附加锚点:

window.location = '#'+id;
于 2013-02-05T16:35:38.843 回答
0

据我所知,Google+ 分享按钮目前仅适用于整个页面而不是部分。
唯一的方法,虽然不是非常用户友好,但是将每个内容分成单个页面。

任何人 - 如果我错了,请纠正我。

于 2013-02-05T12:06:40.573 回答