您好我正在我的网站上实施azubu.tv直播。
由于页面不提供API并嵌入代码,但我必须即兴创作^^
我刚刚发现一个直播的流在网站上有一个特殊的图像,即: http://www.azubu.tv/static/images/channels/live_check.png
例如,让我们来看看这个流 http://www.azubu.tv/channel/live_small.do?cn_id=2125982481001
如果这个人是直播,那么图像就在那里,如果不是,则图像不在页面上。我想如果我可以搜索页面上的图像,我可以找到他是否在线。
任何人都知道如何编码
编辑:我的确切问题是,我不知道这样的事情是否可行。所以有了这个帖子,我想知道它是否可能,以及如何。
EDIT2:
我试过这种方式,但仍然不能伤心地工作: 加载('http://www.azubu.tv/channel/live_small.do?cn_id=2220181926001 .img');
我认为这可行,因为它是页面上唯一没有id afaik的img。
答案 0 :(得分:1)
回答你的问题,可以使用jQuery选择器检查图像是否存在。试试这个:
if ($( "[src|='http://www.azubu.tv/static/images/channels/live_check.png']" ).length > 0) {
alert('Is live');
}
else {
alert('Not live');
}
这是fiddle。但你不能相信图像是否有效(图像的src可以改变)。
修改强> 在阅读了我之前回答的评论后,我想到解决问题的一种方法是:
首先,您需要使用jQuery load
加载要检查的页面,然后检查内容加载中是否存在图像。
让我们假设您有一个ID为container
的div。你可以这样做:
$( "#container" ).load(
"/echo/html/", // using jsFiddle echo service to return the
// html below (docs:
// http://doc.jsfiddle.net/use/echo.html)
{
html: "<img src='http://www.azubu.tv/static/images/channels/live_check.png' />" +
"<div id='div_2'>Div 2</div>" +
"<div id='div_3'>Div 3</div>"
},
function( responseText, textStatus, xmlHttpRequest ){
if ( textStatus == "success" ) {
if ($( "[src|='http://www.azubu.tv/static/images/channels/live_check.png']" ).length > 0) {
alert('Is live');
}
else {
alert('Not live');
}
}
}
);
以下是fiddle
希望它有所帮助!
请注意。由于代理限制,我无法测试您的网址。 :S