
Estoy usando WebStorm para codificar un sitio web y ejecutando un código que encontré en Overflow para ver si funciona según mi propósito.
HTML
<h2 class="quotes">first quote</h2>
<h2 class="quotes">second quote</h2>
CSS
.quotes {display: none;}
javascript
(function() {
var quotes = $(".quotes");
var quoteIndex = -1;
function showNextQuote() {
++quoteIndex;
quotes.eq(quoteIndex % quotes.length)
.fadeIn(2000)
.delay(2000)
.fadeOut(2000, showNextQuote);
}
showNextQuote();
})();
Esto funciona perfectamente en el jsfiddle en el que se estaba ejecutando, pero una vez que lo importé a WebStorm y lo ejecuté en Chrome, no funcionó. ¿Algun consejo?
Respuesta1
Está intentando obtener elementos antes de que existan, por lo que el quotes
tamaño de la matriz es 0. Intente mover su <script>
etiqueta hacia la parte inferior, como:
<!DOCTYPE html>
<html lang="en">
<head>
<link href="https://fonts.googleapis.com/css?family=Fugaz+One&display=swap" rel="stylesheet">
<meta charset="UTF-8">
<title>Purple Reign</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<link rel="stylesheet" href="pvphs.css">
</head>
<body><h2 class="quotes">first quote</h2>
<h2 class="quotes">second quote</h2>
<script src="pvphs.js"></script>
</body>
</html>