web-dev-qa-db-ja.com

JavaScriptで「raw」hrefコンテンツを取得する方法

相対リンクであるすべてのリンクを検索するGreaseMonkeyスクリプトを作成しようとしています。それを行う方法は、hrefの内容と/^https?:///

しかし、アンカーのhref属性にアクセスすると、常に「http」を含むフォームに正規化またはクックされます。つまり、HTMLに次が含まれている場合:

<a id="rel" href="/relative/link">inner</a>

アクセスする

document.getElementById("rel").href

戻り値

http://example.com/relative/link

Href属性の生データにアクセスするにはどうすればよいですか?

あるいは、相対リンクを見つけるより良い方法はありますか?

56
wfaulk

代わりに getAttributeメソッド を試してください。

57
Gumbo

典型的な。質問を投稿した直後に、私はそれを自分で理解しました。

の代わりに:

anchor.href

使用する:

anchor.getAttribute("href")

もちろん、他の人が答えるよりも、この答えを入力するのに時間がかかりました。 (くそ、君たちは速いよ。)

34
wfaulk