如何为动态URL更新网址

3

ShareThis似乎没有更新html5历史记录或ajax驱动站点的动态更改URL的方法。

我尝试了这个函数来更新它,但是URL仍然是原始的:

function initShareThis(){
    var el = document.getElementById("lotShareThis");
    var target = el.firstChild;
    for (var i in stWidget.shareables) {
        if (stWidget.shareables[i].element === target) {
            stWidget.shareables[i].url = window.location.href;
            break; 
        } 
    }
    el.firstChild.onclick();
}

我也尝试了这个,但没有任何效果:
    stWidget.addEntry({
        "url": document.location.href,
        "title":document.title
    });

有没有人遇到过这种情况并能提供一些好的建议?

你可以尝试从DOM中删除shareThis JS块并重新插入它。 - Diodeus - James MacFarlane
2个回答

1

如果您想使用AddThis尝试此操作,可以通过更新页面的标题和历史记录来更改标题和URL,方法如下:

var title = "New Title"
window.document.title = title;
window.history.pushState({path: href}, title, href);

然后你只需要调用:

addthis.toolbox('[selector for AddThis buttons]');

这将强制所有分享按钮更新自身并使用指定的新标题/网址。如果您在使用ShareThis时仍然感到困惑,请尝试此方法。

-1
stWidget.shareables[0].url = window.location.href;

1
请添加解释,即使对您来说似乎很明显。 - Johannes Jander

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接