私が知る限り、標準のJavascriptを使用してこれを達成するには2つの方法しかありません。最初の方法は既に概説されています - ノードをパラメータとして関数に渡します。もう1つの方法は、アンカーのonclick
イベントを処理することです。これは、パラメータを関数に渡すためにマークアップを変更する必要がある点で、前のアプローチと非常に似ています。これを行うには、次のようにマークアップを変更する必要があります:
<a href="#" onclick="SomeFunction(event)">Href works here</a>
function SomeFunction(event) {
var node = event.srcElement;
}
上記のコードは、あなたのイベントについての興味深い情報のすべての種類を与える関数に沿ってイベントオブジェクトを渡します。
ブラウザに送信されるマークアップを変更できない場合は、JQueryなどのAJAXライブラリを使用して、実行時にノードのイベントハンドラを検索して変更することを検討してください。ブラウザに表示されるの前にのマークアップを変更することは明らかですが、選択肢がないことがあります。
最後に、マークアップを変更できず、実行時にDOMを変更したくない場合は、使用できるJavascriptエンジン固有の機能をいつでも確認できます。たとえば、それをサポートするエンジンでarguments.caller
を使用することができます。私はそれがうまくいくと言っているわけではありませんが、利用可能なものを見たいかもしれません。
: あなたのコメントの後に、あなたはこれを試すことができますか? http://stackoverflow.com/questions/906486/javascript-can-i-programmatically-invoke-a-onclick-event-from-a-anchor-tag-wh –
hrefではなくonclickを意味しますか? – Gareth
いいえ私はhrefそのものを入手する必要があります – rahul