2016-08-08 43 views
3

我想要在(非全屏)模式對話框下面的全屏div上執行一次單擊。然而,似乎點擊事件自動以我的背景div的中心爲目標,從而觸及該div頂部的內容(模式對話框本身)。如何在div中的某個位置點擊

如何指定點擊發生的位置?

這是我的點擊命令的詳細輸出:

Element is not clickable at point (640, 436). Other element would receive the click: <label class="btn btn-default ">...

回答

3

問題的根源是硒點擊通過不直接發送鼠標點擊事件的元素,但通過屏幕座標。因此它無法逐點找到可單擊的元素(如詳細輸出中所述)。

有兩種可能的解決方法(對於您的情況):

1)點擊通過元素位置,這不是模態對話框(applicaple全屏格)重疊:

.moveToElement('.backdrop', 900, 10) // 900 is X offset 
.mouseButtonClick(0) 

2)更好,普遍解。通過注入javascript直接發送點擊事件:

.execute(function(selector) { 
     document.querySelector(selector).click(); 
    }, ['.backdrop']) 
相關問題