2012-10-03 58 views
0

我用在Web瀏覽器中生成鼠標點擊此代碼:生成客戶端事件

var element = document.getElementById('element_id'); 
var o = document.createEvent('MouseEvents'); 
o.initMouseEvent('click', true, true, window, 1, 12, 345, 7, 220, false, false, true, false, 0, null); 
element.dispatchEvent(o); 

它的工作,但我不明白什麼呢6日 - 9日(12,345,7,220)的論點呢?當我改變它 - 它不會改變任何東西。我在https://developer.mozilla.org 找到這個aruments是screenX,screenY,clientX和clientY座標,但這是什麼意思?

+0

它只是規定了在網頁上/屏幕點擊事件發生。 –

回答

1

這些參數被添加到創建的事件中。當您最初收到鼠標點擊事件時,您也會獲取事件對象中事件的當前screenX/Y和clientX/Y座標。這樣你可以填寫這些參數。如果在處理事件時不使用它們,那麼它們根本不起作用。

只需將這些參數顯示在屏幕上的哪個位置(screenx/y)以及點擊發生在瀏覽器邊界(clientx/y)的哪個位置。

你可以閱讀這裏的參數:

https://developer.mozilla.org/en-US/docs/DOM/event.screenX

https://developer.mozilla.org/en-US/docs/DOM/event.screenY

https://developer.mozilla.org/en-US/docs/DOM/event.clientX

https://developer.mozilla.org/en-US/docs/DOM/event.clientY

+0

這是否意味着當我生成客戶端事件編程時,它不會執行任何操作? – abilash

+0

它將設置事件內的屏幕/客戶端。因此,如果您從事件處理程序中讀取這些值,則您在創建時設置的值將再次顯示在那裏。就像用戶點擊頁面上的同一個對象,但是當它滾動到另一個位置或瀏覽器位於屏幕的某個位置時。 – bardiir