Ich habe eine Hauptseite und es gibt Elemente auf der Seite. Wenn ich bei einem Artikel auf "Jetzt bestellen" klicke, wird eine HTML-Seite über einen Teil der Seite eingeblendet, um die Details des Objekts anzuzeigen. Ich habe Probleme, das angeklickte Objekt mit einem Objekt in einem Array von Objekten zu verknüpfen, das die Details für jedes Objekt enthält, so dass ich die Details auf der Seite anzeigen kann, die über das Objekt gleitet.Javascript, um Informationen an HTML zu übergeben
Hier ist die Haupt-Seite:
<div class="col-md-4 col-sm-6">
<div class="shop-item">
<div class="shop-thumbnail">
<img src="img/originalImage.jpg" alt="">
</div>
<div class="shop-item-footer">
<div class="shop-item-details">
<h3 class="shop-item-title">Original Title</h3>
<span class="shop-item-price">
$50.00
</span>
</div>
<div class="shop-item-order-btn">
<a href="ajax/slidingpage.html" class="btn btn-ghost btn-sm btn-pill btn-primary waves-effect waves-light ajax-load-link" data-id="003" onclick="changeImage()">Order Now</a>
</div>
</div>
</div>
</div>
Die Seite gleitet über in Ordnung, aber ich kann nicht das Bild zu bekommen scheinen zu ändern. Die HTML-Datei mit den Informationen, die auf dem Bildschirm angezeigt werden, ist in einem Artikel-Tag enthalten. Hier ist das Top-Snippet des HTML mit dem Bild, das ich scheinbar nicht ändern kann.
<article class="order-details">
<div class="order-totals">
<div class="product-image">
<!-- ID for image -->
<img id="pageOrder" src="../img/Image1.jpg" alt="">
</div>
</div>
</article>
Das ist mein JS soweit, das funktioniert nicht.
var items = [{ name: 'Black', cost: '$10.00', id: '001', src: '../img/Black.jpg' }, { name: 'Something', cost: '$10.00', id: '002', src: '../img/image2.jpg' },
function changeImage() {
for (var i = 0; i >= items.count; i++) {
if (i = items.count) {
document.getElementById('pageOrder').src = items.src;
}
}
};
Wie sieht 'Artikel' aus? Es sieht so aus, als ob Sie versuchen, es als Array zu behandeln, das wäre '.length' anstatt' .count'. Das if macht eine Zuweisung anstelle eines Vergleichs ('x === y '), und wenn die Elemente ein Array ist, macht' items.src' keinen Sinn. BEARBEITEN: und 'i> = items.count' mit ich beginnend bei 0 wäre nie wahr – Taplar
Ich erstellte ein Array mit Schlüssel für die Informationen benötigt, um mit den Bildern zu übergeben. Ich habe vergessen, das Array im Code hinzuzufügen, aber ich bin bei diesem Problem ausgebrannt. var items = [{ Name: 'schwarz', Kosten: '$ 10.00', id: '001', src: '../img/Black.jpg' }, { Name: ' etwas ' Kosten: '$ 10.00', id: '002', src:' ../img/image2.jpg‘ }, – TomG103
@Taplar Die for-Schleife auch bei 0 beginnen und dann überprüft, ob' i > = length', das niemals ausgeführt wird, außer die Länge ist 0, in diesem Fall wäre es eine Endlosschleife. – mhodges