【发布时间】:2014-04-07 03:30:45
【问题描述】:
我开始自学 javascript。我想我会尝试制作一个在提供 URL 时嵌入 youtube 视频的脚本。当我创建 iframe 元素、设置属性并将其作为子元素附加到 div 时,谁能帮助我理解我做错了什么?我正在使用 JSFiddle,当我检查元素时,似乎没有将标签添加到 div 中。谢谢!
编辑:这是我的 jsfiddle 链接:http://jsfiddle.net/86W8N/2/
<p>Click the button to call function</p>
YoutubeURL: <input id="url" type="text">
<button onclick="myFunction()">Try it</button>
<div id="video_div">
</div>
<script>
function myFunction() {
var urlValue = document.getElementById("url").value;
var videoID = urlValue.substring(urlValue.indexOf('=') + 1);
var video = document.createElement("iframe");
video.setAttribute(title, "Test");
video.setAttribute(width, "440");
video.setAttribute(height, "390");
video.setAttribute(src, "http://www.youtube.com/embed/" + videoID);
video.setAttribute(frameborder, "0");
var div_element = document.getElementById("video_div");
div_element.appendChild(video);
}
</script>
【问题讨论】:
-
首先请提供jsfiddle url
-
第二个 - 你确定 div_element 在你的情况下不为空吗?
-
第三个也是最重要的 - 控制台是否显示错误? :)
-
@lukas:
#video_div就在原始问题的标记中,我们可以看到myFunction是如何被调用的,所以它不会在 DOMReady 之前出现。假设目标 div 存在可能是安全的。
标签: javascript html