Présentation d'un échiquier en Jquery en cours de développement. Ce n'est pour l'instant qu'une version alpha, le turoriel n'est pas terminé. Il ne fonctionne que sur les navigateurs Chrome et Internet Explorer, des soucis de comptabilités avec le navigateur Firefox.
                 
                
                        
                            Partie 1 :
                        
                        
                        La principale des erreurs est de contruire le DOM en code Javascript. Donc, on initialise l'échiquier en HTML et CSS. De plus, ceci est plus compréhensif.
                        
                         
                        
                            
                                
									
<table>
<tr>
	<td class="bordure" draggable="true"><img src="./img/noir-tour.png" /></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/noir-cheval.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/noir-fou.png"></td>
	<td class="bordure" draggable="true"><img src="./img/noire-dame.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/noir-roi.png"></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/noir-fou.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/noir-cheval.png"></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/noire-tour.png"/></td>
	</tr>
<tr>
	<td class="bordure case-noire" draggable="true"><img src="./img/noir-pion.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/noir-pion.png"></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/noir-pion.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/noir-pion.png"></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/noir-pion.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/noir-pion.png"></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/noir-pion.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/noir-pion.png"> </td>
</tr>
<tr>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
</tr>
<tr>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
</tr>
<tr>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
</tr>
<tr>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/vide.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/vide.png"/></td>
</tr>
<tr>
	<td class="bordure" draggable="true"><img src="./img/blanc-pion.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/blanc-pion.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/blanc-pion.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/blanc-pion.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/blanc-pion.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/blanc-pion.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/blanc-pion.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/blanc-pion.png"/></td>
</tr>
<tr>
	<td class="bordure case-noire" draggable="true"><img src="./img/blanc-tour.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/blanc-cheval.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/blanc-fou.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/blanc-dame.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/blanc-roi.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/blanc-fou.png"/></td>
	<td class="bordure case-noire" draggable="true"><img src="./img/blanc-cheval.png"/></td>
	<td class="bordure" draggable="true"><img src="./img/blanc-tour.png"/></td>
</tr>
</table>
                                
                            
                        
                    
                 
                
                        
                            Partie 2 :
                        
                        
                            Le drag and drop.
                        
                        Méthode en jquery, le framework de javascript pour développer plus vite !
                        
                            
                                
// ajoute la propriété pour le drop et le transfert de données
$.event.props.push('dataTransfer');
$(document).ready(function() {
    var $this, $log = $('#log');
    $('tr td').on({
        // on commence le drag
        dragstart: function(e) {
            $this = $(this);
            // on garde le texte en mémoire (A, B, C ou D)
            e.dataTransfer.setData('text', $this.html());
        },
        // on passe sur un élément draggable
        dragenter: function(e) {
            e.preventDefault();
        },
        // on quitte un élément draggable
        dragleave: function() {
        },
        // déclenché tant qu on a pas laché l élément
        dragover: function(e) {
            e.preventDefault();
        },
        // on lache l élément
        drop: function(e) {
			if (true)
			{
                // on récupère le texte initial
                var data = e.dataTransfer.getData('text');
				//data="<img src='"+data+"' />";
                // on log
                //$log.html(data + ' > ' + $(this).html()).fadeIn('slow').delay(1000).fadeOut();
				$log.html(data + ' > ' + $(this).html());
                // on met le nouveau texte à la place de l ancien et inversement
                // ATTENTION ASTUCE SUR CETTE LIGNE POUR MANGER UNE PIECE, CODE A REVOIR !!!
				$this.text($(this).text());
                $(this).html(data);
            }
        },
        // fin du drag (même sans drop)
        dragend: function() {
        },
        // au clic sur un élément
        click: function() {
            alert($(this).text());
        }
		});
});