0

有没有办法使用 jQuery 或 Javascript 将来自不同 Url 的信息超链接,例如 Youtube 视频上的观看量到我的网站?

在此处输入图像描述

我努力了:

<script>
$(document).ready(function(){
    $('#response').load('http://www.youtube.com/watch?v=lrC2alc_ekol .watch-view-count');
});
</script>

HTML:

<div id="response"></div>
4

2 回答 2

2

是的,这被称为应用程序编程接口或简称 API。如果您正在寻找 YouTube API,您可以在这里找到它:https ://developers.google.com/youtube

于 2013-10-19T20:16:13.570 回答
0

是的,即您可以使用 jQuery Load,一旦您加载了外部页面,就可以使用特定信息的选择器提取您想要的内容。

jQuery加载外部站点页面

IE

$('#myEl').load('remotePageUrl #remotepageIDselector');

myEl 是页面中的元素,remotePageUrl 是外部站点,remotepageIDselector 是包含所需信息的元素的 id,您可以使用任何选择器。

更新:@user2768038,我必须去,但是下面的代码片段应该可以工作,发生的是你正在做一个跨域调用,之前的答案适用于你自己的域,但是下面的代码应该可以工作:

$.getJSON('http://anyorigin.com/get?url=youtube.com/watch?v=lrC2alc_eko&callback=?', function(data){

    var valueToFind;
    $.each($(data.contents), function(i, el) {

        // if we have the value scape ffrom the cicle
        if(valueToFind && typeof valueToFind !== undefined) {
            // alert the requested value
            alert(valueToFind);
            return false;
        }

        // search for the element in the current dom section
        valueToFind = $(el).find('.watch-view-count').html();

    });
});

但这确实是:1- 对页面进行完整请求的成本很高,2- 多次遍历整个 DOM 树的成本很高。3- 不安全,因为外部网站所有者可以随时更改代码。

此外,我的解决方案远非最佳,我将在晚些时候更新帖子,但这至少在 Firefox 和跨浏览器中应该在本地工作,一旦你将代码发布到服务器。

于 2013-10-19T20:19:06.143 回答