jQuery non pris en compte
Bonjour, j'utilise le code suivant du livre "tout javascript" d'Olivier Hondermark :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131
| <html>
<head>
<title>jQuery - Exemples du chapitre 20</title>
<script src="framework/jquery.min.js" async id="jquery"></script>
</head>
<body>
<h1>jQuery, le framework historique JavaScript</h1>
<p>Write Less, Do More</p>
<p>Survolez sur les div 1 à 9</p>
<p>Cliquez sur les div 1 à 9</p>
<div data-jour="2" class="inline">Div 1</div>
<div data-jour="5" class="inline">Div 2</div>
<div data-jour="0" class="inline">Div 3</div>
<div data-jour="7" class="inline">Div 4</div>
<div data-jour="8" class="inline">Div 5</div>
<div data-jour="4" class="inline">Div 6</div>
<div data-jour="1" class="inline">Div 7</div>
<div data-jour="0" class="inline">Div 8</div>
<div data-jour="9" class="inline">Div 9</div>
<div id="bigDiv">
Elément div#bigDiv
</div>
<p>Ajax avec jQuery pour récupérer le cours du Bitcoin</p>
<div id="bitcoin"></div>
<script>
/* Détecter que le framework est bien chargé */
document.querySelector("script#jquery").addEventListener("load", function(e) {
console.log("Version de jQuery = "+$.fn.jquery);
/* Détecter que le document est prêt à être manipulé */
$(document).ready(function(evt) {
console.log("Document chargé");
/* Les traitements peuvent être réalisés maintenant */
$("p").addClass("bord");
$("p").addClass("bord").addClass("fluo").removeClass("basique");
$("div").addClass("bord").addClass("pointer").attr("data-clic", 0);
$("div[data-jour][data-jour!='0']").addClass("fluo");
$("div:eq(4)").addClass("shadow");
$("div[data-jour]").on("click", function(evt) {
$(this).attr("data-clic", parseInt($(this).attr("data-clic"))+1);
var content="<p>data-jour = "+this.dataset.jour+"</p><p>data-clic = "+this.dataset.clic+"</p>";
$("div#bigDiv").html(content).fadeIn(250);
}).on("mouseover", function(evt) {
$(this).addClass("over");
}).on("mouseout", function(evt) {
$(this).removeClass("over");
$("div#bigDiv").hide(250);
});
});
jQueryBTC();
});
function jQueryBTC() {
console.log("Lancement de jQueryBTC()");
/* Appel AJAX via jQuery */
$.ajax({
url: "https://min-api.cryptocompare.com/data/price?fsym=BTC&tsyms=EUR",
cache: false,
method: "GET",
dataType: "json"
}).done(function( data ) {
/* Fonction à réaliser lors de la réussite de l'appel */
console.log( data );
if (data.EUR) {
$("div#bitcoin").html(data.EUR.toFixed(2)+" €");
}
}).fail(function() {
/* Fonction à réaliser si une erreur est détectée */
console.log("Erreur de retour AJAX");
});
setTimeout(jQueryBTC, 60000);
}
</script>
<style type="text/css">
div {
padding:5px;
margin:5px;
font-weight: bold;
}
div.inline {
display:inline-block;
border-radius: 4px;
}
p {
padding: 5px;
margin:6px;
}
.bord {
border:1px solid #999;
}
.pointer {
cursor: pointer;
}
.fluo {
background-color:#ff0;
font-weight: bold;
}
.shadow {
box-shadow: 1px 1px 5px #000;
border:2px solid #000;
padding:4px;
}
.over {
box-shadow: 1px 1px 5px #000;
border:2px solid #000;
padding:4px;
}
div#bigDiv {
border:2px solid #ccc;
padding:5px;
margin:5px;
min-height: 100px;
background: #eee;
}
div#bitcoin {
width:200px;
height:50px;
margin:10px;
padding:10px;
margin-left: auto;
margin-right: auto;
font-weight: bold;
font-size:25px;
text-align: center;
line-height: 50px;
}
</style>
</body>
</html> |
Ma page s'affiche mais je n'ai pas d'interactivité comme ce devrait l'être. Je suppose que c'est à cause de cette ligne :
Code:
<script src="framework/jquery.min.js" async id="jquery"></script>
Je n'aurais pas téléchargé le framework. Qu'en pensez-vous? Merci