Ich versuche ein Skript zu loopen, das jedes Mal ein anderes Element anvisiert, wenn es eine Schleife ausführt, wobei das Skript jedes Mal leicht geändert wird. Ich möchte, dass das Skript beim ersten Mal innerhalb von # row1 wiederholt wird, dann # row2 beim zweiten Mal bis 10. Außerdem muss das Skript selbst jedes Mal geringfügig geändert werden, indem +1 zum Abschnitt "data.children.slice" hinzugefügt wird . Hier ist mein Skript:Schleifen eines JSON-Skripts und Anwenden auf verschiedene DIVS Jede Schleife
<script>
$.getJSON(
"https://www.reddit.com/r/images.json?jsonp=?",
function foo(data)
{
$.each(
data.data.children.slice(0,1),
function (i, post) {
$(".redditTitle").append('<a href="' + post.data.url + '">' + post.data.title + '</a>');
$(".redditPermalink").append('<a href="http://www.reddit.com/' + post.data.permalink + '">forum</a>');
$(".redditUps").append(post.data.ups);
$(".redditDowns").append(post.data.downs);
$(".redditThumbnail").append('<a href="' + post.data.url + '">' + '<img src="' + post.data.thumbnail + '" alt="Image" class="floatleft image news show">' + '</a>');
$(".redditUsername").append('<p class="mediumtext p-color alignleft floatleft redditUsername">'
+ '<a href="https://www.reddit.com/user/' + post.data.author + '">' + post.data.author + '</a>' + '</p>');
}
)
}
)
.error(function() { alert("error"); })
Dieses Skript zieht reddit Inhalt und legt sie in meine divs. Ich möchte eine For-Schleife verwenden, die dieses Skript 10 Mal ausführen wird, aber jedes Mal ändern Sie die data.data.children.slice(0,1),
durch Hinzufügen von 1. Zum Beispiel wäre der erste Lauf children.slice(0,1)
und der nächste wäre data.data.children.slice(1,1),
den ganzen Weg zu (10,1)
. Jeder DIV hat identische Klassennamen.
Hier ist mein lahme Versuch so weit. Bitte vergib, es ist Gräuel. Es erübrigt sich zu sagen, dass es nicht :(funktioniert.
$(document).ready(function(){
var i=1;
var n=0;
$("'#row' + i++")function(){
for {
$.getJSON(
"https://www.reddit.com/r/images.json?jsonp=?",
function foo(data)
{
$.each(
data.data.children.slice(n++,1),
function (i, post) {
$(".redditTitle").append('<a href="' + post.data.url + '">' + post.data.title + '</a>');
$(".redditPermalink").append('<a href="http://www.reddit.com/' + post.data.permalink + '">forum</a>');
$(".redditUps").append(post.data.ups);
$(".redditDowns").append(post.data.downs);
$(".redditThumbnail").append('<a href="' + post.data.url + '">' + '<img src="' + post.data.thumbnail + '" alt="Image" class="floatleft image news show">' + '</a>');
$(".redditUsername").append('<p class="mediumtext p-color alignleft floatleft redditUsername">'
+ '<a href="https://www.reddit.com/user/' + post.data.author + '">' + post.data.author + '</a>' + '</p>');
}
)
}
)
.error(function() { alert("error"); })
}
}
});
Ich habe vergessen, den Rest meiner for-Schleife hinzuzufügen, die angibt, dass es nur 10 Mal ausgeführt werden soll. Ich habe immer noch Probleme damit, IDs zu ändern. –