我需要帮助。目前,我正在尝试创建一个JavaScript,只要我点击网页上的按钮,就会生成一个随机的YouTube视频。
$("#new_video").click(function(){
$("#video").text(function(){
var videos = [
'Ig-DbfPoz3o',
'estPhyfBGho',
'6JL4hpnZklk'
];
var index=Math.floor(Math.random() * videos.length);
var html='<iframe width="840px" height="480px" src="http://www.youtube.com/embed/' + videos[index] + '" frameborder="0" allowfullscreen></iframe>';
document.write(html);
});
});
答案 0 :(得分:0)
有一些问题。
首先,您尝试设置元素的HTML内容,因此您希望使用.html()
函数,而不是.text()
函数。
其次,传递给.html()
(或.text()
)调用的函数应该返回一个字符串,其中包含要替换元素内容的HTML。
第三,页面加载后请勿使用document.write()
。
所以你的代码应该是这样的:
$(document).ready() {
// use document ready event to make sure elements exist
$("#new_video").click(function(){
$("#video").html(function(){
var videos = [
'Ig-DbfPoz3o',
'estPhyfBGho',
'6JL4hpnZklk'
];
var index=Math.floor(Math.random() * videos.length);
var html='<iframe width="840px" height="480px" src="http://www.youtube.com/embed/' + videos[index] + '" frameborder="0" allowfullscreen></iframe>';
return html;
});
}).trigger('click');
// trigger the newly bound click event handler so the iframe shows on page load
});