Я пытаюсь получить список всех записей в блогах с помощью API Blogger с помощью javascript Loop. Я нашел решение в StackOverflow тоже. но это не сработало для меня.
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
function handleResponse(response) {
var post_number = Object.keys(response.items).length; //number of posts
for (i=0; i<post_number; i++) {
$('#content').append('<div id="post' + (i+1) + '" class="post"><p></p></div>');
$('.post p').html(response.items[i].title);
}
}
</script>
<script src="https://www.googleapis.com/blogger/v3/blogs/5039479718685240371/posts?callback=handleResponse&key=AIzaSyDxfWmXTRnO5yIp25NvuUEBWKSa_5mqjHA"></script>
ниже ошибка возникла, когда я запустил этот код: { "message": "Uncaught ReferenceError: $ is not defined", "filename": "https://stacksnippets.net/js", "lineno": 17, "colno": 5 }
Я сделал пробную версию и ошибку с вашим кодом, и первая проблема, которую вы заметили, была решена путем включения библиотеки jQuery.
Вы можете использовать ajax для получения данных вместо того, чтобы включать их в тег скрипта. jQuery будет регистрироваться и вызывать функцию обратного вызова для вас.
Остальное сработало. Вот пример. Я бы также предложил изменить ваш ключ сейчас.
$.ajax("https://www.googleapis.com/blogger/v3/blogs/5039479718685240371/posts?callback=handleResponse&key=AIzaSyDxfWmXTRnO5yIp25NvuUEBWKSa_5mqjHA")
function handleResponse(response) {
//var post_number = Object.keys(response.items).length; //number of posts
for (i = 0; i < response.items.length; i++) {
var titleHtml = '<div id="post' + (i + 1) + '" class="post"><p>' + response.items[i].title + '</p></div>';
$('#content').append(titleHtml);
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="content"></div>