1

我有一個有多個圖像的React應用程序。點擊圖片後,會打開一個模式,通過iframe api加載YouTube視頻。我使用這個加載視頻I幀https://www.npmjs.com/package/react-youtube反應 - 通過點擊事件在手機上自動播放視頻

模態

有條件添加和使用狀態modalVisible拆下來的DOM:真/假。

{this.state.modalVisible ? <div className="Modal"><YouTube videoId="2g811Eo7K8U" onReady={this._onReady} /></div> : null} 

這是偉大的,因爲如果需要使用VS裏面裝已經在頁面加載視頻中的傳統模式,然後顯示塊在需要時顯示模式只會加載視頻。

但是,在移動視頻無法自動播放(https://developers.google.com/youtube/iframe_api_reference#Mobile_considerations),所以與傳統的隱藏/顯示預裝模式我可以調用一個功能,當圖像被點擊顯示模式,並使用event.target.playVideo();播放視頻本質上自動播放它。但是,當我通過先加載視頻到模態圖像被點擊視頻時做呼籲onready功能時視頻一旦加載event.target.playVideo();不起作用:

_onReady(event) { 
    // access to player in all event handlers via event.target 
    event.target.playVideo(); 
} 

有什麼辦法來加載視頻然後自動播放點擊功能,而不會在點擊事件發生之前加載視頻?

回答

0

不,沒有真正的用戶點擊沒有辦法啓動視頻(如果您以編程方式觸發點擊,瀏覽器會明白它不是真正的用戶操作)。

YT iframe必須在DOM中才能在用戶單擊圖像時啓動視頻。