2013-08-11 12 views
5

Delphi XE4でTChromiumコンポーネントを使用してGoogle Voice Webページを表示するデスクトップアプリケーションを開発しています。DIVをシミュレートする

私は「CONNECT」(それはDIVです)プログラムで通話を開始するために、私はボタンの背後にJavaScriptコードをトリガする方法を見つけることができません必要があります。

enter image description here

TChromiumを実行することができますjavascriptコードと私はすでに、パネルを表示する文字 "c"を使用してキーイベントをシミュレートするjavascriptコードを使用して、 "CALL"ボタンのクリックをシミュレートすることができました。これは、Google Voiceにショートカットがあり、「c」がコールを開始するための有効なショートカットであるために機能します。また、javascriptを使用して、入力フィールドに番号を設定することができます。 、あなたが見ることができるように、IDがない

enter image description here

一切のonClickとの接続をトリガする近道はありません。私の主な問題は、私は「CONNECT」をクリックをシミュレートする方法がわからないということではありませんボタン。 )(

document.getElementById(":87.mi").children[0].children[0].children[5].children[1].children[0].children[0].children[0].children[1]; 

をしかし、何が.click追加トリガすることはできません。

私はこれを参照するには、次のコードを使用してDIV得ることができます。私は、click()がonClickメソッドをトリガーするので、それは定義されていないと仮定します。誰かがこのdivをクリックしたときにjavascriptコードが実行されることを知る方法はありますか?

「電話番号」入力にフォーカスがある場合は、「TAB」を押して「電話する電話」に移動し、「選択肢を覚えてください」に移動し、最後に「接続」を押してそれを動作させるためにキーを入力してください。私は最初にCALLボタンをシミュレートするのと同じコードを使用しようとしましたが、TAB(キーコードは67ではなく9)でフォーカスを移動しないので動作しません。

私が焦点は、今で動作する唯一のオプション

「を呼び出すために数」から離れて移動しないようがない結果とMOUSE_EVENT、keybd_event、PostKeyExHWND、PostKeyEx32とのPostMessageを使っても、Delphiでプログラム的にそれを実行しようとしましたSetCursorPosを使用してデルファイでマウスを移動し、座標を計算するボタンのクリックをシミュレートすることですが、これは私が最後に選択するオプションです。

ご提案は大歓迎です!

+0

jQueryのバニラJSソリューションを好む?あなたはコンソールを利用できますか?イベントは 'document.getElementsByClassName( 'goog-button-base-content')[0] .click()'でトリガーされますか? – DevlshOne

+0

JQueryはこのWebページには含まれていないと思います。動的に含めることが可能な場合は、それは問題ありません。このウェブページのリンクはhttp:// googleです。あなたは米国にいなければならず、最初に電話番号を登録しなければなりません。 –

+0

それから、私はこのゲームを終えています...少なくとも、私は['the question'](http://stackoverflow.com/q/1668619/960757)へのリンクを追加して、このサービスの公式APIを使用するためのものです。 – TLama

答えて

-1

次の解決策を提案します。ビューからインポートする必要がjavascriptのファイルで

、次のコードを置く:あなたはここで行うことは、我々はそのクラスを持つdiv要素を押すこと毎回ある

$(".goog-button-base-content").click(function(){ 
    //CODE HERE 
}); 

、あなたが開始されます内部ロジックは、 "HERE CODE"

(私の悪い英語のため申し訳ありませんが)

私は有効にすることを願っています。あなたを参照してください

関連する問題