短い答えは?何もない。
長い答え:
要素はスクリプトをトリガする何かを見つけるために、あなたはJavascriptが各要素にリスナーを添付している実行されたかを知るする必要があると思います。それを行うには、Javascriptを実行できる必要があります。 WATIRとNokogiriはJavascriptを単独で実行しません。 WATIRはJavaScriptを内部的に実行するブラウザを使用します。 Watir-webdriverは、Javaベースのブラウザエミュレータ(Selenium)を使用しています。このエミュレータには、ページのJavaScriptを実行するJavaScriptエグゼキュータもあります。 NokogiriはJavaScriptをまったく実行しません。
したがって、特定の要素にどのリスナーが関連付けられているかを「読み込む」独自のJavascriptを挿入する必要があります。 JavaScript環境を制御できないため、これは簡単ではありません。 しかし、でも、それを行う方法が見つかったとしても、W3C DOMインターフェイスが提供する標準的なメソッドがないため、特定の要素にどのイベントリスナーが関連付けられているかを調べることはできません。 JQueryのような個々のJavaScriptライブラリはリスナをキャッシュしますが、それぞれ独自の方法で行います。
つまり、これは非常に複雑になります。
次の可能な解決策
はすべて推測ですが、あなたが本当に戻ってRubyの土地で、この情報を取得追求したい場合、これはあなたにしようとするために何かを与えます。
まず、JSをページに挿入して結果を得る方法が必要です。これは、Seleniumがこれを行うためのフックを持っているため、watir-webdriverを使用して可能になる可能性があります。 JSを注入して結果をSeleniumの呼び出し元に返す方法については、this pageの最後を参照してください。もう1つの選択肢はPhantomJSで、JS APIを備えたヘッドレスブラウザです。
第2に、一般的なJSライブラリがリスナーをキャッシュして情報を収集する方法を理解するJavaScriptライブラリを見つける必要があります。そのためには、Visual Event 2を試すことができます。
あなたはまだこれらのものを結線する必要があります。これはJSハッカーのビットを必要とします。がんばろう。
あなたはビジュアルイベント2に向かうのは間違いありませんでした。私はこれまで考えていましたが、私が持っていた誤解のために、私は最初にそれを拒否しました。私は今、Visual Event 2からRubyに情報を抽出する方法を見ています。次の[question](http://stackoverflow.com/questions/16577725/extracting-visual-event-2-output-into-script)に示すように、 。うまくいけば、私はすぐに自分自身でそれに答えることができるでしょう! – Seanny123
Visual Event 2のソースコードに干渉してSelenium-Webdriverを注入することで、JavaScriptイベントに関連付けられた要素を識別し、そこから情報を取得することができました。マークを正しい方向に向けてくれてありがとう。 – Seanny123
おめでとうございます!それがうれしかった。 –