我可以使用websockets在瀏覽器上模擬鍵盤嗎? 我期待模擬箭頭鍵和F11。我們可以使用websockets發送遠程密鑰事件嗎?
1
A
回答
4
關鍵事件已經在瀏覽器已經面市多年
見 http://www.quirksmode.org/dom/events/keys.html爲支持
列表,並與關鍵事件的jQuery這裏工作 Is it possible to simulate key press events programmatically?
的WebSockets是較新的技術,它是不適用於所有瀏覽器,但您可以使用模擬網絡套接字的庫,如果需要在舊版瀏覽器(如Socket.io)上進行雙向實時消息傳遞。
客戶端上的僞代碼將是這個樣子:
(function ($) {
function simulateKeyPress(character) {
jQuery.event.trigger({ type : 'keypress', which : character.charCodeAt(0) });
}
function onkeypress(key, ts) {
var act = {"timestamp" : ts, "key" : key};
socketIoClient.emit("message", act);
}
$('body').keypress(function(e) {
// Send date in case you want to order/buffer on the server
onkeypress(e.which, new Date());
});
var socketIoClient = io.connect(null, {
'port': '#socketIoPort#'
, 'rememberTransport': true
, 'transports': ['websocket', 'xhr-polling'] // put here all the transports you need
});
// Handle the key press events
socketIoClient.on('message', function(json) {
var act = JSON.parse(json);
if (act) {
// Not sure what the keys will do but if you just want to echo them
simulateKeyPress(act.key);
}
});
})(jQuery);
希望這有助於
0
當然可以的!
- 打開與Websocket服務器的連接,並在每個jQuery keyUp-Event上發送請求到它!
- 在websocket端,只需將Event throw傳遞給其他瀏覽器連接即可。
- 在其他瀏覽器只是模擬按鍵響應
simulateKeyPress(e);
相關問題
- 1. 我們可以使用JSch進行SSH密鑰通信嗎?
- 2. 我們可以使用asp.net和c#從localhost發送郵件嗎?
- 3. 使用Wildfly,我可以遠程監聽緩存事件嗎?
- 4. 我們可以用nagios郵件警報發送附件嗎?
- 5. 當我們不知道可用密鑰時,可以使用MongoDB嗎?
- 6. 我可以使用事件在應用程序之間發送信號嗎?
- 7. 我們可以在密鑰庫中加載多個證書和密鑰嗎?
- 8. 我的ssh密鑰的人可以遠程訪問我的筆記本嗎?
- 9. 使用MultipartEntityBuilder發送密鑰和文件
- 10. perl可以在Linux下發送特殊的密鑰,如F1嗎?
- 11. 我們可以使用Opendds發送圖像文件或視頻文件嗎?
- 12. 我可以使用遠程桌面服務將數據發送到RemoteApp嗎?
- 13. 我們可以使用2i來檢索Riak對象而不是密鑰嗎
- 14. 我們可以使用PHP中的.cer格式的私鑰進行加密嗎?
- 15. 我們可以使用GCM的API密鑰
- 16. X在發送密鑰時會發送很多按鍵事件
- 17. 我們可以使用arduino.getKey()獲取鍵盤事件嗎?
- 18. 我們可以使用div的滾動事件嗎?
- 19. 我們可以在故事板中使用xib文件嗎?
- 20. 我們可以通過從iPhone向PayPal服務器發送請求來獲得Preapproval密鑰嗎? (用於測試)
- 21. 我可以將應用程序密鑰分組嗎?
- 22. 使用Akka我們可以從遠程系統複製文件嗎?
- 23. 我們可以使用System.Data.OracleClient將List <>發送到Oracle存儲過程嗎?
- 24. 我可以使用SA_OAuthTwitterEngine共享Web應用程序的使用者密鑰和密鑰嗎?
- 25. 我們使用IBM MQ6.1。我們可以使用多線程將消息發送到隊列嗎?
- 26. 發送密鑰到組件
- 27. 我可以使用ssh密鑰進行Azure git推送部署嗎?
- 28. 我們可以從Opensssl訪問iPhone鑰匙串密鑰和證書嗎?
- 29. 我們可以使用手機網站觸發手機通話事件嗎?
- 30. 我們可以在我們的matlab程序中使用「點」嗎?
做什麼?你有什麼嘗試? – 2012-08-12 09:57:26
我在我的網頁中有一個iframe。這個iframe元素,可以使用鍵盤控制Google演示文稿。但是因爲我想從遠程瀏覽器發送事件,所以我想模擬關鍵事件。謝謝 – user279244 2012-08-18 17:05:03