2015-04-20 43 views
2

我在尋找an article關於如何在瀏覽器窗口中檢測焦點。這是demo page這個IE特定的代碼是做什麼的?

我很困惑這是什麼條件。

if (/*@[email protected]*/false) { // check for Internet Explorer 
    document.onfocusin = onFocus; 
    document.onfocusout = onBlur; 
} else { 
    window.onfocus = onFocus; 
    window.onblur = onBlur; 
} 

我認爲document.onfocusin是Internet Explorer相當於window.onfocus。但我不明白什麼條件做:

if (/*@[email protected]*/false) { // check for Internet Explorer 

這是不是隻是一個評論,它簡化了表達if(false)

回答

3

根據this link@cc_on語句允許IE呈現其他瀏覽器不是的東西。他們稱之爲「有條件彙編」。

強烈建議您使用@cc_on聲明註釋,使不支持條件編譯的瀏覽器會接受你的腳本爲有效語法:

一個@if或外部@set聲明的評論也激活條件編譯。

因此,IE瀏覽器將讀取你的代碼的第一個條件爲!false,但所有其他瀏覽器將讀取它作爲false

警告,雖然:

條件編譯無法在Internet Explorer 11標準模式和Windows Store應用程序的支持。

+0

謝謝!另外,'@'結尾是做什麼的?這是語法的一部分嗎? –

+0

@AnubianNoob它關閉了聲明 – ndugger

+0

哦gotcha。謝謝! –