Моя страница Javascript не получает данные от giphy API

Я связал Giphy API с моим приложением и не могу понять, почему вызов не работает. Я подумал, что, возможно, это был мой ключ, но я вставил открытый ключ, и он все еще не работал. Я неправильно называю API? Я проверил документацию по API giphy, и похоже, что я использую правильные параметры.

вот мой код:

var feelings = ["Angry", "Happy", "Excited", "Confused"];
var currentGif;
var pausedGif;
var animatedGif;
var stillGif;



function createButtons() {

    $('#buttons').empty();

    for(var i=0; i < feelings.length; i++) {

        var showBtn = $('<button>').text(feelings[i]).addClass('showBtn').attr({'data-name' : 
feelings[i]});

        $('#buttons').append(showBtn);
    }


    $('showBtn').on('click', function() {

        $('display').empty();

        var currentFeeling = $(this).data('name');

        var giphyURL = "http://api.giphy.com/v1/gifs/search?q=" + 
currentFeeling + "&api_key=xxx&limit=8";

        $.ajax({

        url: giphyURL,
        method: 'GET'
    }).done(function(giphy) {

        currentGif = giphy.data;

        $.each(currentGif, function(index, value) {

            animatedGif = value.images.original.url;
            pausedGif = value.images.original_still.url;

            var thisRating = value.rating;

            if(thisRating == '') {

                thisRating = 'unrated';
            }

            var rating = $('<h3>').html('Rated: '+ thisRating).addClass('ratingStyle');

            stillGif = $('<img>').attr('data-animated', animatedGif).attr('data-paused', pausedGif).attr('src', pausedGif).addClass('playOnHover');

            var fullGifDisplay = $('<button>').append(rating, stillGif);

            $('#display').append(fullGifDisplay);
        });



    });

    });
}

$(document).on('mouseover', '.playOnHover', function() {

    $(this).attr('src', $(this).data('animated'));
});

$(document).on('mouseleave', '.playOnHover', function() {

    $(this).attr('src', $(this).data('paused'));
});

$('#add-feeling').on('click', function() {

    var newFeeling = $('#feeling-input').val().trim();

    feelings.push(newFeeling);

    createButtons();

    return false;
});

createButtons();

2 ответа

Я понял это... мне не хватало классов и идентификаторов (#, .).. вздох

Эй, я пересмотрел этот код, вы используете https от http-

var giphyURL = "https://api.giphy.com/v1/gifs/search?q=" + 
currentFeeling + "&api_key=0BScOL3fj1asLChkeb0QOnvJcNr7VbHc&limit=8";

поделитесь своим поисковым параметром, например //api.giphy.com/v1/gifs/search?q=parameter

Другие вопросы по тегам