如何使用javascript和youtube api使文本可点击
How to make text using javascript and youtube api clickable
现在我有一个基本的html页面,可以使用youtubes api获取最受欢迎的视频。到目前为止,它显示了视频的标题,但我正在尝试使这些标题可点击。如果标题被点击,他们就会被带到实际YouTube上的视频中。我知道理论上我可以找到最受欢迎的视频,然后做一个可点击的链接,但我希望每次使用 youtube API 找到新的流行视频时,它都会或多或少地自动更新。现在我有这个基本代码。
<html>
<head>
<title>My Videos</title>
<style>
.titlec {
font-size: small;
}
ul.videos li {
float: left;
width: 10em;
margin-bottom: 1em;
}
ul.videos {
margin-bottom: 1em;
padding-left : 0em;
margin-left: 0em;
list-style: none;
}
</style>
<script type="text/javascript" src="http://swfobject.googlecode.com/svn/trunk/swfobject/swfobject.js"></script>
<script type="text/javascript">
function showData(data) {
var feed = data.feed;
var entries = feed.entry || [];
var html = ['<ul class="videos">'];
for (var i = 0; i < entries.length; i++) {
var entry = entries[i];
var title = entry.title.$t.substr(0, 20);
// var thumbnailUrl = entries[i].media$group.media$thumbnail[0].url;
html.push('<span class="titlec">', title, '...</span><br /></span></li>');
}
// html.push('</ul><br style="clear: left;"/>');
document.getElementById('videos2').innerHTML = html.join('');
if (entries.length > 0) {
loadVideo(entries[0].media$group.media$content[0].url, false);
}
}
</script>
</head>
<body>
<div id="playerContainer" style="width: 20em; height: 180px; float: left;">
<object id="player">
</object>
</div>
<div id="videos2"></div>
<script
type="text/javascript"
src="http://gdata.youtube.com/feeds/api/standardfeeds/most_popular?time=this_week&alt=json-in-script&callback=showData&max-results=10&format=5">
</script>
</body>
</html>
我不确定我是否完全理解您要实现的目标,但是我已经创建了一个jsfiddle!
这是代码:
<html>
<head>
<title>My Videos</title>
<script type="text/javascript" src="http://swfobject.googlecode.com/svn/trunk/swfobject/swfobject.js"></script>
<script type="text/javascript">
function showData(data) {
var feed = data.feed;
var entries = feed.entry || [];
var html = ['<ul class="videos">'];
for (var i = 0; i < entries.length; i++) {
var entry = entries[i];
var title = entry.title.$t.substr(0, 20);
html.push('<li class="titlec"><a href="javascript:void(0);" onClick="loadVideo('+"'"+ entry.media$group.media$content[0].url +"'"+');">' + title + '</a></li>');
}
document.getElementById('videos2').innerHTML = html.join('') + '</ul>';
if (entries.length > 0) {
loadVideo(entries[0].media$group.media$content[0].url);
}
}
function loadVideo(e) {
var container = document.getElementById('playerContainer');
var player = document.getElementById('player');
container.removeChild(player);//remove object child
player.setAttribute('data',e);//change link
container.appendChild(player);//add object back
}
</script>
</head>
<body>
<div id="playerContainer" style="width: 20em; height: 180px; float: left;">
<object id="player"></object>
</div>
<div id="videos2"></div>
<script type="text/javascript" src="http://gdata.youtube.com/feeds/api/standardfeeds/most_popular?time=this_week&alt=json-in-script&callback=showData&max-results=10&format=5">
</script>
</body>
相关文章:
- 谷歌搜索API-“;没有结果”;文本
- 使用AcrobatJavascript API获取所选文本
- 谷歌地图API地理位置文本搜索地点详细信息
- 使用谷歌地图API和谷歌文本搜索进行地理定位
- 将HTML文本输入传递给Facebook API javascript调用
- 我有来自OpenWeatherMap API的风向数据,数据以0到360度表示.我想将其转换为文本格式
- angular js文本到语音转换api
- jquery移动phonegap应用程序的语音到文本api
- GoogleMaps API:如何将geoJSON属性与信息框中的静态文本连接起来
- 节点 Webkit 文本到语音 API 不起作用
- 翻译 API 以仅转换文本部分(而不是 HTML)
- 放置 API 文本搜索与附近搜索
- 无法使用 AJAX 获取 url 的 StumbleOn 视图,因为它的 API 返回文本/纯文本
- 如何通过API获取一小段文本和维基百科文章的主图像
- 如何使用 Google 云端硬盘实时 API 实现协作式富文本编辑
- 谷歌地方API从自动完成表单中获取输入文本
- 如何为 Google 放置 API 自动完成文本框设置默认值
- 自动完成文本视图谷歌放置 API 描述 -> place_id
- 如何从文本API中删除单个字符串行
- 使用Javascript从纯文本API中获取值