我想跟蹤用戶在TChromium內做了多少點擊。我不在乎他是否點擊了「空白區域」/鏈接/按鈕/圖片等。我只想知道他點擊了多少次。我希望TChromium有Onclick事件,但沒有。我怎麼知道用戶點擊?TChromium OnClick
1
A
回答
3
您可以添加事件偵聽器。這裏的問題是CEF3不支持像CEF1那樣的DOM事件監聽器,所以它不是那麼容易的(儘管不是不可能)。在我嘗試製作V8交互示例之前,一個非常骯髒的解決方法就是這樣。您創建一個足夠唯一的字符串,爲整個文檔添加一個事件偵聽器,並且在這種情況下您使用該唯一字符串記錄消息。而在Delphi中,你會等着,例如:
const
MyClickMessage = '08B52B44-748F-44BB-AC6C-5179D6C1F523';
procedure TForm1.Chromium1LoadEnd(Sender: TObject; const browser: ICefBrowser;
const frame: ICefFrame; httpStatusCode: Integer);
begin
if frame.IsMain then
frame.ExecuteJavaScript(
'document.addEventListener("click", function(evnt){' +
'console.log("' + MyClickMessage + '");' +
'});',
'',
0);
end;
procedure TForm1.Chromium1ConsoleMessage(Sender: TObject; const browser: ICefBrowser;
const message, source: ustring; line: Integer; out Result: Boolean);
begin
if message = MyClickMessage then
begin
Result := True;
ShowMessage('User clicked!');
end;
end;
哈克獨特日誌消息,吧:)?我會嘗試想出更好的東西(使用V8引擎)。
相關問題
- 1. 獲取,爲TChromium
- 2. TChromium(德爾福)。如何從TChromium關閉程序?
- 3. 使TChromium呈現反鋸齒
- 4. TChromium GetDevToolsUrl沒有返回
- 5. 德爾福XE3和TChromium
- 6. 使用TChromium在LoadURL上出錯
- 7. 如何隱藏TChromium中的滾動條
- 8. 使用TChromium,Delphi鉻嵌入式
- 9. 枚舉TChromium中的DOM節點
- 10. TChromium ChromeTabs不能正常工作
- 11. 使用Delphi和TChromium檢測URL更改
- 12. 如何將上下文菜單附加到TChromium瀏覽器
- 13. DCEF3 TChromium:迭代DOM並單擊按鈕/填充輸入
- 14. 如何改變Delphi Tchromium中組合框的值?
- 15. howto通過編程獲取tchromium加載文檔的截圖?
- 16. 如何更改TChromium組件的默認背景色?
- 17. Delphi嵌入式(TChromium) - 獲取腳本輸出
- 18. TChromium個人資源下載完成事件?
- 19. 如何獲取並設置TChromium滾動條位置?
- 20. TChromium:如何將特定圖像保存到文件?
- 21. 德爾福TChromium負荷變函數不工作
- 22. onclick或onClick?
- 23. OnClick風格的OnClick
- 24. 反向onClick事件onClick
- 25. 更改onclick()裏面onclick()
- 26. 獲取類的onClick onClick
- 27. Div出現onclick,消失onclick
- 28. 與Delphi7一起使用SOAP時,TChromium/DCEF3會導致「訪問衝突」錯誤
- 29. Delphi TChromium CEF3運行時創建的瀏覽器加載頁面不正確
- 30. Delphi TChromium:如何在顯示和隱藏圖像之間切換Options.ImageLoading
這又是一個文件。我會馬上回來...... – Victoria
我相信你需要勾住鼠標按鈕。否則,我不明白爲什麼TChromium會關心如果你點擊一個什麼都不需要的地方。 – RBA
@RBA,我擔心你是對的,因爲我認爲你不會在JavaScript中使用Flash等容器收聽點擊。 – Victoria