Comment afficher toutes les images d'un tableau dans JS et utiliser encore Lightbox2?Comment afficher un tableau d'images avec JS et utiliser Lightbox2
Professeur de mathématiques de 8e gr qui tente de créer un tableau d'images Tic Tac Toe où Lightbox2 permet aux utilisateurs de cliquer pour agrandir les images. Dans le code, vous verrez que je randomiser le tableau pour rendre plus difficile pour mes enfants de tricher. L'objectif est cependant d'obtenir le tableau pour afficher chaque img dans une grille 3x3, mais permettre aux étudiants de cliquer et d'agrandir chaque image avec un modal.
Lightbox2 nécessite la ligne de code suivante:
a href = "images/image-1.jpg" data-lightbox = "image-1" data-title = "Ma légende"> Image # 1/a C'est pourquoi j'ai tous les signes + inefficaces dans le code js document.write.
J'ai cherché la réponse ici où les réponses éditent le DOM ou incrémentent à travers le tableau utilisant .foreach, je n'ai pas encore vu une solution où vous pouvez cliquer pour agrandir l'image dans un modal. Merci et mes élèves vous diront merci! C'est la première fois que je m'engage à introduire l'informatique dans la salle de classe, alors je suis vraiment un noob.
<!DOCTYPE html>
<html>
<head>
<title>Tic Tac Toe</title>
<link href="https://fonts.googleapis.com/css?
family=Oswald:300,700|Varela+Round" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="tictactoestyle.css">
<link href="css/lightbox.css" rel="stylesheet">
<script type="text/javascript" src="tictactoe.js"></script>
<script src="js/lightbox-plus-jquery.js"></script>
</head>
<body>
<div class="title">
<h1> Tic Tac Toe </h1>
</div>
<div id="gameboard"> <!--Container for all nine divs-->
<script>displayAllImages();</script>
</div>
</body>
</html>
/*Javascript*/
function shuffle(arr) {
var currentIndex = arr.length, temporaryValue, randomIndex;
// While there remain elements to shuffle...
while (0 !== currentIndex) {
// Pick a remaining element...
randomIndex = Math.floor(Math.random() * currentIndex);
currentIndex -= 1;
// And swap it with the current element.
temporaryValue = arr[currentIndex];
arr[currentIndex] = arr[randomIndex];
arr[randomIndex] = temporaryValue;
}
return arr;
function displayAllImages() {
var imgArray = [];
imgArray[0] = "image1";
imgArray[1] = "image2";
imgArray[2] = "image3";
imgArray[3] = "image4";
imgArray[4] = "image5";
imgArray[5] = "image6";
imgArray[6] = "image7";
imgArray[7] = "image8";
imgArray[8] = "image9";
imgArray = shuffle(imgArray);
for (i=0;i<imgArray.length;i++) {
document.write("<div class='card'><a href='images/" + item + "'.jpg
data-lightbox='" + item + "'><img src='images/" + item + "m.jpg'></a>
</div>");
Merci, ça a marché comme un champion. Je continue de parcourir vos liens et vos commentaires pour comprendre ce que vous avez fait. Off à Codecademy, merci beaucoup. @RickTakes – mister