2011-09-05 178 views
3

可以在node.js中模擬鍵盤筆畫嗎? 當然,我想模擬運行節點應用程序的機器上的鍵盤事件,而不是在html/js客戶端應用程序中。鍵盤事件使用Node.JS模擬

+0

的Node.js是一種服務器端技術。你想模擬服務器上還是客戶端上的鍵盤輸入?如果是後者,這是一個HTML/JavaScript特定的問題。 – Waldheinz

+0

我想模擬「服務器」(別名「我在哪裏運行節點應用程序」)的鍵盤輸入,因爲有時我不僅使用node.js服務器端應用程序。 – vannyn

+0

在'fs'和'system'外面,節點沒有很多特定於OS的代碼(儘管它正在改進)。對系統調用特定於您的操作系統的解決方案可能會有更多的運氣,例如http://en.wikipedia.org/wiki/Expect –

回答

0

在Node中,您可以使用jsDomhttps://github.com/tmpvar/jsdom)模擬DOM API,您也可以在其中模擬關鍵事件。還包括jQueryify,所以你也有一個花哨的包裝。

var jsdom = require("jsdom"); 
var document = jsdom.jsdom(); 
var window = document.parentWindow; 

jsdom.jQueryify(window, "jquery-1.10.2.js", function (window, $) { 
    try { 
     $(window).keydown(function(){ 
      console.log("keydown"); 
     }); 
     $(window).keyup(function(){ 
      console.log("keyup"); 
     }); 
    } 
    catch (alllogs) { 
     console.log(alllogs); 
    } 
}); 

也許這可以幫助你有點:-)

+0

我不確定,我想他想要產生一些按鍵在服務器端而不是前端 – Xsmael