js如何發送組合鍵,實現列印複製粘貼查找等功能

下面方法適用於ie瀏覽器

使用SendKeys將鍵擊和組合鍵擊發送到活動應用程式。此類無法實例化。若要發送一個鍵擊給某個類並立即繼續程序流,請使用Send。若要等待鍵擊啟動的任何進程,請使用SendWai。

//模擬按鍵  ,要修改IE瀏覽器的安全配置var WsShell = new ActiveXObject('WScript.Shell'); WsShell.SendKeys('{F11}');

每個鍵都由一個或多個字符表示。若要指定單個鍵盤字符,請使用該字符本身。例如,若要表示字母 A,請將字符串「A」傳遞給方法。若要表示多個字符,請將各個附加字符追加到它之前的字符的後面。若要表示字母A、B和C,請將參數指定為「ABC」。   加號(+)、插入符號(^)、百分號(%)、波浪號(~)以及圓括號() 對 SendKeys   具有特殊含義。若要指定這些字符中的某個字符,請將其放在大括號 ({})  內。例如,若要指定加號,請使用「{+}」。若要指定大括號字符,請使用「{{}」和「{}}」。中括號   ([   ])   對   SendKeys   沒有特殊含義,但必須將它們放在大括號內。在其他應用程式中,中括號具有特殊含義,此含義可能會在發生動態數據交換(DDE)時起重要作用。   若要指定在按鍵(如ENTER或TAB)時不顯示的字符,以及表示操作而不表示字符的鍵,請使用下表中的代碼:

鍵   代碼      BACKSPACE   {BACKSPACE}、{BS}   或   {BKSP}      BREAK   {BREAK}      CAPS   LOCK   {CAPSLOCK}      DEL   或   DELETE   {DELETE}   或   {DEL}      DOWN   ARROW(下箭頭鍵)   {DOWN}      END   {END}      ENTER   {ENTER}   或   ~      ESC   {ESC}      HELP   {HELP}      HOME   {HOME}      INS   或   INSERT   {INSERT}   或   {INS}      LEFT   ARROW(左箭頭鍵)   {LEFT}      NUM   LOCK   {NUMLOCK}      PAGE   DOWN   {PGDN}      PAGE   UP   {PGUP}      PRINT   SCREEN   {PRTSC}(保留供將來使用)      RIGHT   ARROW(右箭頭鍵)   {RIGHT}      SCROLL   LOCK   {SCROLLLOCK}      TAB   {TAB}      UP   ARROW(上箭頭鍵)   {UP}      F1   {F1}      F2   {F2}      F3   {F3}      F4   {F4}      F5   {F5}      F6   {F6}      F7   {F7}      F8   {F8}      F9   {F9}      F10   {F10}      F11   {F11}      F12   {F12}      F13   {F13}      F14   {F14}      F15   {F15}      F16   {F16}      數字鍵盤加號   {ADD}      數字鍵盤減號   {SUBTRACT}      數字鍵盤乘號   {MULTIPLY}      數字鍵盤除號   {DIVIDE}

若要指定與SHIFT、CTRL和ALT鍵的任意組合一起使用的鍵,請在這些鍵代碼之前加上以下一段或多段代碼。

鍵   代碼 SHIFT   +      CTRL   ^      ALT   %

若要指定在按一些鍵時應同時按住SHIFT、CTRL和ALT鍵的任意組合,請將這些鍵的代碼放在括號內。例如,若要指定按E和C時同時按住SHIFT鍵,請使用「+(EC)」。若要指定按E時應按住SHIFT,之後按C時不按住   SHIFT,請使用「+EC」。   要指定重複的鍵,請使用 {鍵數字} 的形式。鍵和數字之間必須放一空格。例如,{LEFT   42}   表示按左箭頭鍵 42 次;{h   10} 表示按H 10次。   注意:因為沒有可用來激活另一個應用程式的託管方法,所以可以在當前應用程式中使用此類,或使用本機Windows方法(如FindWindow和 SetForegroundWindow)來強制聚焦到其他應用程式上

工具/原料

ie 瀏覽器,editplus等編輯工具

方法/步驟

<!doctype html>

<html>

<head>

<meta charset="UTF-8">

<meta name="Generator" content="EditPlus®">

<meta name="Author" content="">

<meta name="Keywords" content="">

<meta name="Description" content="">

<title>Document</title>

</head>

<body>

1111111111111111111111111111111111

<INPUT/>

<input type="button" onclick="dayin()" value="點擊我列印"/>

<input type="button" onclick="fuzhi()" value="點擊複製"/>

<input type="button" onclick="zhantie()" value="點我粘貼"/>

<input type="button" onclick="chazhao()" value="點我查找"/>

<input type="button" onclick="guanbi()" value="點我關閉"/>

</body>

<script>

function dayin(){

var wsShell = new ActiveXObject("WScript.Shell");

wsShell.SendKeys("^(p)");

}

function fuzhi(){

var wsShell = new ActiveXObject("WScript.Shell");

wsShell.SendKeys("^(c)");

}

function zhantie(){

var wsShell = new ActiveXObject("WScript.Shell");

wsShell.SendKeys("^(v)");

}

function chazhao(){

var wsShell = new ActiveXObject("WScript.Shell");

wsShell.SendKeys("^(f)");

}

function guanbi(){

var wsShell = new ActiveXObject("WScript.Shell");

wsShell.SendKeys("%({F4})");

}

</script>

</html>

本文內容整理自網絡, 文中所有觀點看法不代表淘大白的立場