2017-04-07 32 views
0

我正在用dashjs創建視頻播放器。當我嘗試向我的函數添加數據屬性以創建我的視頻容器元素中的<video>元素時,我似乎收到錯誤「未捕獲的ReferenceError:元素屬性賦值時無效的左側」。發生未捕獲的ReferenceError:元素屬性賦值中的左側無效

function createVideoElement() { 
     videoElement = document.createElement("video"); 
     videoElement.id = "video"; 
     videoContainer = document.getElementById("video-container"); 
     videoElement.autoplay = false; 
     videoElement.src = ""; 
     videoElement.controls = true; 
     videoElement.data-video-id = window.datavideoId; 
     videoContainer.appendChild(videoElement); 
     window.addEventListener('popstate', onBackNav); 
     return videoElement; 
    } 

的錯誤是: -

videoElement.data-video-id = window.datavideoId; 

好了,它不喜歡我的 「數據的視頻ID」。如果我刪除data-video-id行,則使用適當的屬性創建元素<video>。我怎麼能不做這個錯誤呢?

+0

有沒有這樣的「數據 - 視頻 - id」屬性是有視頻元素 –

回答

2

您不能使用-作爲變量名稱的一部分,因爲它被解釋爲減號(減法)運算符。

爲了解決這個問題,你可以嘗試videoElement['data-video-id'] = window.datavideoId;或更好videoElement.setAttribute('data-video-id', window.datavideoId);

+1

是的,我想它了,就像你張貼了這個。 videoElement.setAttribute('data-video-id',window.datavideoId);完美的作品。謝謝! –

相關問題