0

我想要的操作是在键盘“输入”时将视频更改为各自的项目,但它返回一个错误“未定义”与我用来选择项目的插件有关。另一个方面是它不应该单独加载视频页面(ajax)。

javascript:

$.getJSON("http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20xml%20where%20url%3D'http%3A%2F%2Frss.cnn.com%2Fservices%2Fpodcasting%2Fac360%2Frss.xml'%20AND%20itemPath%3D%22%2F%2Fchannel%22&format=json&diagnostics=true&callback=?", function (data) {

    // Load Titles patch Json
    console.log(data.query.results.channel.item);
    var titles = data.query.results.channel.item.map(function (item) {
        return item.title;

    });
    var urls = data.query.results.channel.item.map(function (item) {
        return item.origLink;

    });
    console.log(titles);
    $(".container-list-podcast ul").append('<li>' + titles.join('</li><li>'));
    $(".container-list-podcast ul li").each(function (key, value) {
        var text = $(this).text();
        $(this).html('<a href="' + urls[key] + '">' + text + '</a>');
    });
    $(".container-list-podcast ul li a").click(function () {
        var href = $(this).attr('href');
        alert(href);
        $("#myvideo").attr("src", href).get(0).play();
        return false;
    })
    // Load Navigation Only Key
    a = $('.nav_holder li').keynav(function () {
        return window.keyNavigationDisabled;
    });
});

jsfiddle

4

1 回答 1

1

由于您使用的是跨域请求,因此您应该确保连接到的服务器支持这样的请求。

但是您还需要通过执行以下操作告诉 jQuery 支持此请求:

 $.support.cors = true;

完整答案可以在jQuery 站点中看到

于 2013-08-12T05:26:09.297 回答