2014-06-29 67 views
0

有人可以請解釋下面的代碼是如何工作的。Javascript全屏api

元素是指視頻,而全屏是頁面上的鏈接。

我遇到的if語句

var element = document.getElementById('element'); 
var fullscreen = document.getElementById('fullscreen'); 

fullscreen.addEventListener('click', function() { 
    if (element.requstFullscreen) { 
     element.requstFullscreen(); 
    } else if (element.webkitrequestFullscreen) { 
     element.webkitrequestFullscreen(); 
    }; 
}); 
+0

'如果(element.requstFullscreen){''如果存在element.requstFullscreen'與否的測試。 –

回答

0
在全屏

,當您單擊無法理解:

如果element有屬性requestFullscreen,然後requestFullscreen()將被調用, 否則,webkitrequestFullscreen()將被稱爲。

這就是我看到requestFullscreen()和webkitrequestfullscreen()時可以說的最好的。

+0

我認爲你的意思是「財產」而不是「屬性」。 –

1
if (element.requestFullscreen) { 
    element.requestFullscreen(); 

如果元素對象中含有一種叫requestFullscreen,調用它(有一個錯字,我固定的)。這是通過Javascript全屏顯示的標準方式。

} else if (element.webkitrequestFullscreen) { 
    element.webkitrequestFullscreen(); 
} 

如果不是,但包含一些名爲webkitrequestFullscreen的東西,請調用它。這就是您在舊版Chrome/Safari中的做法。

順便說一下,要檢查的功能存在一個更可靠的方法是typeof

if (typeof element.requestFullscreen == "function") { 
+0

如果元素有requestFullscreen方法,然後調用它? – user3753641

+0

@ user3753641是的。 – Scimonster

+0

是的,但普通的'if'只是檢查'requestFullscreen' _exists_;它可能是,例如,只是一個字符串(不知道爲什麼,但仍然)。我在我的文章中解釋了另一種使用'typeof'的更好方法。 – Pietu1998