因此,我正在尝试从某人的Tumblr中滚动一个随机图像,但效果不佳。问题是,有时它没有选择照片并且背景保持黑色(在我的.css文件中定义),如何解决?我从这里其他问题中借来的代码。提前致谢。

    <script>
    $(document).ready(function () {
    var link = "http://api.tumblr.com/v2/blog/www.30000fps.com/posts?";
    $.ajax({
        type: "GET",
        url: link,
        dataType: "jsonp",
        data: {
            api_key: "ClAjag2DrKwJhbFY1aAAwqBUxEFBEOBwc7AzMwXlcaNlp3gZte"
        }
    }).done(function (data) {

        var url = $.rand(data.response.posts);
        url = url.photos[0].original_size.url;
        console.log(url);
        console.log($.rand(data.response.posts));
        $('DIV.background').css('background-image', 'url(' + url + ')');;

        });
    });

(function ($) {
            $.rand = function (arg) {
                if ($.isArray(arg)) {
                    return arg[$.rand(arg.length)];
                } else if (typeof arg == "number") {
                    return Math.floor(Math.random() * arg);
                }
            };
        })(jQuery);

    </script>

最佳答案

我发现有时候您的随机化结果是视频而不是照片,因此请尝试以下代码仅对照片进行随机化:

$.rand = function(arg) {
    if ($.isArray(arg)) {
        var lRandValue = arg[$.rand(arg.length)];
        if (lRandValue.type !== "photo") return $.rand(arg);
        return lRandValue;
    } else if (typeof arg == "number") {
        return Math.floor(Math.random() * arg);
    }
};

07-28 02:42
查看更多