2017-04-07 33 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);完美的作品。谢谢! –

相关问题