2

Delicious送信ブックマークレットのように、URLで可能な場合は、アクセスしたURLをサードパーティのサイトに送信するために使用できる標準のJavaScriptが必要です。提案?

たとえば、私は使用しています

javascript:void(location.href="http://www.yacktrack.com/home?query="+encodeURI(location.href)) 

これまでのところ、私が使用できるより洗練されたものや、より良い練習があるかどうか疑問に思います。

4

3 に答える 3

2

Deliciousブックマークレットのようなもの(ユーザーがURLを送信するためにアクティブにクリックするものなど)が必要ですか?もしそうなら、あなたはおそらく彼らのコードをコピーしてターゲットURLを置き換えることができます:

javascript:(function(){
    location.href='http://example.com/your-script.php?url='+
    encodeURIComponent(window.location.href)+
    '&title='+encodeURIComponent(document.title)
})()

スクリプトが期待するものと一致するように、クエリ文字列名などを変更する必要がある場合があります。

Webサイトを通じてユーザーを自動的に追跡したい場合、これはおそらく不可能です。AJAXを使用してURLをリクエストする必要がありますが、WebブラウザはJavascriptが元のドメインの外部でリクエストを行うことを許可しません。多分それはトリックで可能iframeです。

編集:ジョンはそれに私を打ち負かした。

于 2008-09-10T15:45:59.003 に答える
1
document.location = "http://url_submitting_to.com?query_string_param=" + window.location;
于 2008-09-10T15:38:03.747 に答える
0

別のオプションは、次のようなものです。

<form action="http://www.yacktrack.com/home" method="get" name="f">
  <input type="hidden" name="query" />
</form>

次に、JavaScriptは次のようになります。

f.query.value=location.href; f.submit();

または、[リンクを保存] を次のように送信と組み合わせることができます。

<form action="http://www.yacktrack.com/home" method="get" name="f" onsubmit="f.query.value=location.href;">
  <input type="hidden" name="query" />
  <input type="submit" name="Save Link" />
</form>

サーバー側のコードを実行している場合は、場所をプラグインして、JavaScript を使用しないようにすることができます。

<form action="http://www.yacktrack.com/home" method="get" name="f">
  <input type="hidden" name="query" value="<%=Response.Url%>" />
  <input type="submit" name="Save Link" />
</form>
于 2008-09-10T16:04:45.183 に答える