AddThis によって共有される URL にいくつかの URL パラメーターを追加したいのですが、これらのパラメーターは、ユーザーが共有をクリックした時点でしかわかりません。(スライダーにいくつかの画像が表示されています。ユーザーが共有をクリックした場合、URLに画像番号を追加して、URLがユーザーが共有した実際の画像に移動するようにします)。
AddThis Event API を使用しようとしましたが、ユーザーが共有しようとしているイベントがあると通知されます。その時点で URL を変更しようとしましたが、URL が更新されません。(もう一度共有すると、以前に設定したものに変更されるようですが、これも古くなっています)。
これを達成するための最良のアプローチは何ですか?AddThis を使用しない場合は、これを許可し、一般的なソーシャル メディア プラットフォーム (Facebook、Twitter、Pinterest、電子メールなど) をサポートするより良いものを使用することもできます。
**更新**
これまでに試したことを明確にするために:
function updateAddThisUrl()
{
//slide_no is the variable I am adding as a URL parameter
var location = window.location;
var theUrl = location.protocol + '//' + location.host + location.pathname + "?image=" + slide_no;
addthis_share = {url : theUrl};
addthis.update('share', 'url', theUrl);
addthis.url = theUrl;
addthis.ready();
}
function eventHandler(evt)
{
updateAddThisUrl();
}
addthis.addEventListener('addthis.menu.share', eventHandler);
上記は、後続の共有の URL のみを更新するため、ユーザーが [共有] を再度クリックしたときにのみ有効になります (その時点では、新しい画像と新しい URL パラメーターがあるため、再び古くなっています)。私も使ってみましaddthis.menu.open
たが同じ効果でしたので、その前のURLを取っているのでしょう。addthis.menu.share
また、addthis ポップアップ メニューから電子メールを選択すると、イベントがトリガーされないことにも気付きました。