« Le langage HTML/HTML5 » : différence entre les versions
Contenu supprimé Contenu ajouté
Page créée avec « {{nouveau livre}} ==Faire un livre dont vous êtes le héros== ===Idée maîtresse=== L’arborescence classique est : * ./ :: ./scripts :: ./styles :: ./assets <-- c'es... » |
|||
Ligne 1 :
{{nouveau livre}}
==Faire un livre dont vous êtes le héros==
===Idée maîtresse===
L’arborescence classique est :
* ./
:: ./scripts
:: ./styles
:: ./assets <-- c'est ici que viennent les images et les sons
:: ./assets/images
==
<source lang="html5">
<!doctype html5>
<html>
<!--
LDVELH(Livre dont vous êtes le héros) -> engine amicaFolio
+---------------------------------------
| Cet engin est un single page application
| cette version de l'engin ne permet de changer qu'un image à la fois par page
+----------------------------------------------------
synopsis : j'ai fait cet engin pour une amie (\).(\)
version : 0.1
authors : zulad//
-->
<head>
<meta charset="UTF-8" />
<script src="scripts/jquery-1.11.3.js" ></script>
<link rel="stylesheet" type="text/css" href="styles/style.css" > </link>
</head>
<body onload="fillPage(1);" >
<div id="main" />
</body>
</html>
<script>
// Les données peuvent être modifiées en fonction de l'histoire
var datas = {
_cpt:1,
_1:{img:"0_start.svg", txt:"Il est 07h au réveil de Lucie. Si vous voulez vous lever : {{cliquez ici|2}} "},
_2:{img:"0_bed.svg", txt:"Il était l'heure de se lever. Si vous voulez vous laver : {{cliquez ici|3}} - Si vous voulez vous recoucher : {{cliquez ici|1}}"},
_3:{img:"2_sdb.svg", txt:"Il était l'heure de se laver. Si vous voulez vous recoucher : {{cliquez ici|1}} - Si vous voulez lire les news : {{cliquez ici|4}}"},
_4:{img:"3_miroir.svg", txt:"Il était l'heure de regarder les news. Si vous voulez vous coiffer : {{cliquez ici|5}}"},
_5:{img:"4_miroir.svg", txt:"Il était l'heure de se coiffer"}
};
// Ceci est le noyau de l'application. Il est préférable de ne pas le modifier
function getMatches(string, regex, index) {
index || (index = 1); // default to the first capturing group
var matches = [];
var match;
while (match = regex.exec(string)) {
matches.push(match[index]);
}
return matches;
}
function fillText(str) {
var re = new RegExp("(\{\{)([ a-zA-Z0-9|]*)(\}\})", "gm");
matches = str.match(re);
var matches = getMatches(str, re, 2);
var lnk = Array();
for (m in matches)
{
lnk[m] = matches[m].split("|");
str = str.replace(matches[m], "<span class='click' onclick='fillPage("+lnk[m][1]+")'>"+lnk[m][0]+"</span>");
str = str.replace("{{","").replace("}}","");
}
return str;
}
function fillPage(page) {
if(!page) page = 1;
var content_1 = '<table id="tbl" width="480"> \
<tr><td width="10"><img id="imgTrg" src="assets/images/'+eval('datas._'+page+'.img')+'" onclick="fillPage(target);" /></td></tr> \
<tr><td id="txt">'+fillText(eval('datas._'+page+'.txt'))+'<td/></tr> \
</table>'; $("#main").html(content_1); eval(datas._cpt = page);
}
</script>
</source>
===Résultat===
Le résultat html peut être porté sur tablette ou smartphone. J'ai prévu les screenshots suivant pour un petit web serial sur smartphone.
[[File:Livre interactif en HTML5.png|Cette image illustre un essai de livre interactif pour un didacticiel sur wikibooks.]]
[[File:Livre interactif 02.png|Livre interactif 02]]
[[File:Livre interactif 03.png|Livre interactif 03]]
[[Catégorie:Littérature]]
|