[英]How to double click a word in a web page by Javascript in browser's console
HTML :
<iframe .....
<p class="textClass"> Some Text.............
<span id="unique-id"> Double-Click Me</span>
</p>
</iframe>
要求:
我需要通過在瀏覽器的控制台中傳遞 Javascript 以雙擊單詞Double-Click Me來以編程方式觸發雙擊。 有一次,我雙擊會打開一個彈窗window,我可以在其中為雙擊的單詞添加評論。
解決方案嘗試:
使用 Selenium 的 Actions class 雙擊方法僅適用於 Chrome 瀏覽器,不適用於 Firefox、IE、Edge 和 Safari。
嘗試了許多 Javascript 可用於雙擊元素 - 沒有任何效果
var evObj = new MouseEvent('dblclick', {bubbles: true, cancelable: true,
view: window});
evObj.dispatchEvent(evObj);
我們將添加一個 onclick 事件,將變量設置為 0 以計算點擊次數。
然后我們將檢查點擊次數是否為 2,如果是,我們將提示用戶輸入一個新詞,獲取值並將其放置在舊詞的位置。
假設您希望多次更改此值,我們需要將變量重置為 0,或者在我的示例中,將點擊次數取模 2 並檢查余數是否為 0(最終查看它是否為偶數!) ,然后我們可以非常輕松地記錄總點擊次數(如果這與您完全相關)。
<p class="textClass"> Some Text.............
<span id="unique-id" onclick="double()"> Double-Click Me</span>
</p>
<script>
var clickNum = 0;
function double(){
clickNum += 1;
if (clickNum % 2 == 0){
var newWord = prompt("Enter word: ");
document.getElementById("unique-id").innerHTML = newWord;
}
}
</script>
編輯:好的,顯然您希望能夠雙擊頁面上的單詞。 你需要的是一個用戶腳本(Tampermonkey/Greasemonkey 可以工作)。
// ==UserScript==
// @name New Userscript
// @namespace http://tampermonkey.net/
// @version 0.1
// @description try to take over the world!
// @match * //Add your website here so it doesn't execute on every page you visit!
// @author You
// @grant none
// ==/UserScript==
(function() {
'use strict';
// Your code here...
document.getElementById("unique-id").click;
document.getElementById("unique-id").click";
})();
我真的希望這是你想要的。 如果你的意思是別的,那么請仔細澄清。
你可以試試下面的代碼
var Clickevent = new MouseEvent('dblclick', {'view': window});
document.getElementById('unique-id').dispatchEvent(Clickevent);
所以對我來說,以下適用於雙擊:
var clickEvent = new MouseEvent('dblclick', {bubbles:true, isTrusted:true});
document.getElementById('unique-id').dispatchEvent(clickEvent);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.