为什么this不起作用,而this有效。唯一不同的是,在第二种情况下,我在html文件中添加了视频元素,而不是通过innerHTML方法添加它们。
document.querySelector('#top').innerHTML = document.querySelector('#top').innerHTML + "<video id='vid" + id + "'></video>";
应该创建这个
<video id="vid0"></video>
<video id="vid1"></video>
但是当看到chrome中的调试窗口时,我看到当我在javascript中创建视频标签时,第一个视频的src元素没有出现。当我手动将它们添加到html时,这种情况不会发生。
答案 0 :(得分:1)
一些问题(我想!):
for (var i = 0; i <= vids; i++)
vids
最终为2,所以这是尝试为视频[0],视频[1]和视频[2]设置src,而你只创建了两个视频。
同样在这:
height = video[id].videoHeight / (video[id].videoWidth / width);
video[id].videoHeight
未定义,因此高度最终为NaN。