如何更新动态URL的URL

时间:2012-11-02 19:57:05

标签: javascript html5 dom addthis sharethis

ShareThis似乎无法更新为html5历史记录启用或ajax驱动的网站动态更改的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
    });

遇到这种情况的人有什么好的建议吗?

2 个答案:

答案 0 :(得分:1)

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

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

然后你只需要打电话:

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

这将强制所有共享按钮更新自己并使用指定的新标题/网址。如果您仍在努力使用ShareThis,请尝试一下。

答案 1 :(得分:-1)

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