2012-03-03 76 views
1

我正在構建一個考試應用程序,其中我需要用戶留在應用程序中並回答一些問題。當他們不這樣做時,我需要監視,比如打開一個新標籤或瀏覽器來搜索答案。當他們最小化應用程序窗口等等。那麼有沒有辦法在jQuery中做到這一點。請不要投下這個問題,因爲我已經在這個網站上搜索類似的問題的答案。使用jquery監視用戶的活動

就像鼠標沒有懸停在文檔的body元素上一樣。

+0

說實話,如果有辦法做到這一點,我會感到驚訝,因爲這會引發令人擔憂的隱私問題。 – Maerlyn 2012-03-03 09:33:35

+0

實際上,與目前的答案相反,這是可能的,因爲Youtube實際上是這樣做的。正如我最近觀察到的,如果像以前一樣按下暫停按鈕,YouTube將不會加載內容,即使您在另一個選項卡中視頻未加載。它只在您觀看時加載。 – 2012-03-08 01:21:28

+0

這可能是Flash的做法。 – Maerlyn 2012-03-08 07:17:16

回答

1

對於什麼是值得的,我不打算檢查這個跨瀏覽器..把它留給你,但一些窗口事件可能有幫助。

試試這些。使用Firefox時,如果鼠標在文檔中處於活動狀態,則會觸發瀏覽器選項卡的更改並最小化窗口,以獲得窗口焦點。你可以深入挖掘可用的其他窗口事件,看看你能拿出足以讓他爲你工作,或者至少你會擴大你的盡職調查

$(window).blur(function(){ 
    console.log('blur') 
}).focus(function(){ 
    console.log('focus') 
}); 

更新你的代碼的發現...是有點有趣

0

射擊回答:

沒有,沒有辦法做下去!

龍答:

你不能考慮用戶最小化瀏覽器搜索答案。這可能是他電腦中出現的另一件讓他這麼做的事情。

對用戶的電腦進行這樣的控制可能會讓用戶的生活變得很糟糕。開發人員正在努力讓用戶的生活更輕鬆,而不是不舒服。

而當你再次知道答案是,你不能這樣做:-)

1

這是設計不可能的 - 這將是,如果可能的JavaScript像這樣的東西之外的大量的安全問題,其沙箱。

您將需要完全控制客戶端機器來執行這樣的操作,使用可以佔用全屏幕的客戶端應用程序,鎖定任務切換等......這是很多編程工作,可能會必須專門爲每個操作系統完成,並且絕不會100%可靠。再加上即使是100%的解決方案也很容易繞過,因爲附近有一臺計算機。

,你可以在一個網站情況下,最好是實施一些保障措施,比如時間限制,監控鍵盤活動的網頁內,並確保它是恆定的,而這樣的。這裏適合的是由你的真實世界的情況決定的,考慮添加更多關於它的信息。

0

我不這麼認爲只有jQuery,因爲你沒有足夠的控制瀏覽器與JS。

雖然您可以做的是使用一些軟件/瀏覽器設計爲在Kiosks中運行,因爲它們有很多相同的要求,但可能不會立即顯現給您。