2012-06-29 49 views
2

我正在學習Javascript,並且在這個過程中,我發現Javscript中不允許某些操作,這在一般的編程中是相當常見的。例如,由於明顯的安全原因,不可能在Javascript中控制用戶的鼠標指針,請參閱Move Mouse Cursor JavascriptJavascript中的不允許的方法

我想知道更多這樣的事件可以用來控制用戶輸入,但在Javascript中不可能。

+0

我相信你的問題太廣泛了,因爲JavaScript是一種腳本語言,所以會有大量的JavaScript被編程語言遺留下來。 –

+0

是的,我明白。讓我重新提出這個問題,只關注控制用戶事件的方法。 – whatisinaname

回答

5

沒有阻止您從Javascript 移動鼠標指針本身,它是環境您代碼在(Web瀏覽器)中運行,它不提供庫函數來執行此操作。

您可以通過編寫Web瀏覽器擴展(例如,Windows上的受信任ActiveX控件)來解決該問題,該擴展可向腳本層提供綁定,例如SetCursorPos()。然後你將能夠從你的Javascript代碼中移動指針。

換句話說,Javascript語言不會以任何方式限制您,但是如果您真的想要(取決於瀏覽器的話),Web瀏覽器環境實施(合法)限制可以被解除。

最後一件事:鼠標指針屬於用戶。以編程方式移動它是侵入式的,令人驚訝的,令人困惑的,並且降低用戶對您的應用程序和他的桌面環境的信心。 請不要這樣做。

+0

有道理。因此,我不應該專注於Javascript,而應該關注瀏覽器以及哪些事件來控制用戶輸入是允許的還是受限制的。對於不同的瀏覽器,這些限制會有所不同。正確? – whatisinaname

+0

正確,但請記住,首先解除這些限制的原因很少。如果您正在尋找全面的UI自動化,則有[其他解決方案](http://msdn.microsoft.com/zh-cn/library/ms747327.aspx)。 –

+0

是的,我瞭解這些限制的安全含義。這正是我想知道的,即瀏覽器不允許使用哪些方法,特別是控制可能以某些方式導致惡意活動的用戶輸入。控制鼠標指針就是這樣一種方法。 – whatisinaname

2

那麼,這些可能會有所幫助:

Hereyougo