Voici l'avant dernière partie de ce court tuto. J'explique comment détecter les boutons de la 3DS et les éléments HTML incompatibles avec celle-ci.

1 - Détecter l'appui sur un bouton

Le navigateur de la Nintendo 3DS cache un petit secret : il est possible de détecter l'appui sur les boutons de la croix directionnelle et du bouton A en JavaScript. Il est malheureusement impossible de détecter les autres boutons. Voici le code JavaScript complet :


document.onkeydown = function(event) { // détecte l'appui sur un bouton quelconque et appelle une fonction anonyme
	var key_pressed; // déclaration de la variable qui va contenir le bouton qui a été appuyé
	if(event == null) {
		key_pressed = window.event.keyCode; 
	}
	else {
		key_pressed = event.keyCode; 
	}
	switch(key_pressed){ // switch avec comme paramètre la variable contenant le bouton pressé
		case 13: // si le bouton A est pressé (bouton Entrée sur un clavier standard d'ordinateur)
			// ... action à effectuer
			break;
		case 37: // si la croix directionnelle gauche est pressée
			// ... action à effectuer
			break;
		case 38: // si la croix directionnelle haut est pressée
			// ... action à effectuer
			break;
		case 39: // si la croix directionnelle droite est pressée
			// ... action à effectuer
			break;
		case 40: // si la croix directionnelle bas est pressée
			// ... action à effectuer
			break;
	} 
}

Si vous souhaitez tester une page utilisant ce code, sachez que sur un ordinateur, le bouton A de la 3DS équivaut à la touche Entrée.

2 - Les élements HTML incompatibles ou compatibles avec la Nintendo 3DS

1) Les éléments de plug-in tel que flash, ect...

Bien sûr, au vu de la mémoire limitée du navigateur de la Nintendo 3DS (la plus grande partie est allouée aux jeux et au menu Home), il est impossible d'utiliser les éléments nécessitant un plug-in tel que Flash, Java (langage de programmation différent de Javascript, bien sûr), ect...

2) Certains éléments HTML5 sont fonctionnels

Certains éléments du HTML5 sont supportés par la Nintendo 3DS tel que RANGE, l'attribut AUTOFOCUS, l'élement très utile CANVAS, et peut-être d'autres que je n'ai pas énuméré.

3) Les images 3D .MPO sont supportés

Les images .MPO sont fonctionnelles, mais s'affichent en 3D uniquement si le navigateur essai d'afficher l'image (via un lien par exemple).

Voilà pour les fonctionnalités incompatibles/compatibles avec la 3DS. Si j'en ai oublié, n'hésitez-pas en m'en faire part via l'e-mail indiqué sur la page de contact. Vous pouvez désormais passer à l'exercice qui sera la dernière partie du tuto et vous aurez toutes les clefs en main pour créer un site pour la Nintendo 3DS comme la Boite à outils 3DS.