今天遇到了這個方法,便去度娘瞭解了下 函數功能:該函數在屬於當前線程的指定視窗里設置滑鼠捕獲。一旦視窗捕獲了滑鼠,所有滑鼠輸入都針對該視窗,無論游標是否在視窗的邊界內。同一時刻只能有一個視窗捕獲滑鼠。如果滑鼠游標在另一個線程創建的視窗上,只有當滑鼠鍵按下時系統才將滑鼠輸入指向指定的視窗。 setCa ...
今天遇到了這個方法,便去度娘瞭解了下
函數功能:該函數在屬於當前線程的指定視窗里設置滑鼠捕獲。一旦視窗捕獲了滑鼠,所有滑鼠輸入都針對該視窗,無論游標是否在視窗的邊界內。同一時刻只能有一個視窗捕獲滑鼠。如果滑鼠游標在另一個線程創建的視窗上,只有當滑鼠鍵按下時系統才將滑鼠輸入指向指定的視窗。
setCapture作用是將滑鼠事件捕獲到當前文檔的指定的對象。這個對象會為當前應用程式或整個系統接收所有滑鼠事件。使用releaseCapture()釋放。
setCapture捕獲以下滑鼠事件:onmousedown、onmouseup、onclick、ondblclick、onmouseover和onmouseout。程式中主要是要捕獲onmousemove和onmouseup事件。 參數為false時容器不會捕獲容器內對象的滑鼠事件,即容器內的對象可以正常地觸發事件和取消冒泡。 DEMO:網上很多DEMO說setCapture用於滑鼠拖動元素,實際測試有沒有setCapture都不影響拖動功能,後來發現setCapture是用來取消其他的拖動事件,比如文字選擇。 https://blog.csdn.net/zhengbo0/article/details/10238905 https://blog.csdn.net/u010853130/article/details/55101191 https://developer.mozilla.org/zh-CN/docs/Web/API/Element/setCapture 註意:谷歌瀏覽器不支持該函數 obj.setCapture && obj.setCapture(),包括使用谷歌內核的世界之窗瀏覽器。