作javascript全屏,在ie瀏覽器中作,把別人的代碼拿過來,結果無效。javascript
原始代碼以下:java
function fullScreen() { var el = document.documentElement; var rfs = el.requestFullScreen || el.webkitRequestFullScreen || el.mozRequestFullScreen || el.msRequestFullScreen; if(typeof rfs != "undefined" && rfs) { rfs.call(el); } else if(typeof window.ActiveXObject != "undefined") { //for IE,這裏其實就是模擬了按下鍵盤的F11,使瀏覽器全屏 var wscript = new ActiveXObject("WScript.Shell"); if(wscript != null) { wscript.SendKeys("{F11}"); } } }
結果你會發現,在ie瀏覽器中,反卻是沒有任何反應。 web
通過查資料,以及親身實踐(ie11),發現一個Bug,也就是ie的坑,window.ActiveXObject 是一個本地方法,但經過typeof window.ActiveXObject 會獲得一個undefined 一樣的wscript對象,也是null瀏覽器
基於這些問題,將代碼修改以下(我這裏只須要在ie內正常運行)code
function maxScreen() { var el = document.documentElement; var rfs = el.requestFullScreen || el.webkitRequestFullScreen || el.mozRequestFullScreen || el.msRequestFullScreen; if(typeof rfs != "undefined"&&rfs) { rfs.call(el); return; } var wscript = new ActiveXObject("WScript.Shell"); wscript.SendKeys("{F11}"); }
這樣就解決了沒法全屏的問題對象