Javascript pour faire Glisser et Drop en HTML5

Essayer de faire un simple glisser-déposer exemple en HTML5 mais lorsque je déposer l'image dans l'élément div, j'obtiens l'erreur suivante.

Uncaught TypeError: Impossible de définir la propriété 'innerHTML', null

Donc je suppose que le message d'erreur signifie dragElement est null. Je ne comprends pas pourquoi, parce que je l'ai mis dans l'événement dragstart être dans le code HTML de l'élément img.

Quelqu'un sait comment faire ce travail?

var dragElement = null;

$('#x').bind('dragstart', function (e) {
    dragElement = this;
    e.dataTransfer.effectAllowed = 'move';
    e.dataTransfer.setData('text/html', this.innerHTML);
});

$('#drop-box').bind('dragover', function (e) {
    e.preventDefault();
    return false;
});

$('#drop-box').bind('drop', function (e) {
    e.preventDefault();
    if (e.stopPropagation) {
        e.stopPropagation();
    }

    if (dragElement != this) {
        dragElement.innerHTML = this.innerHTML;
        this.innerHTML = e.originalEvent.dataTransfer.getData('text/html');
    }

    return false;
});

OriginalL'auteur PeteGO | 2011-11-18