Astuce Javascript+html: Avoir un comportement normal sur le drop avec Firefox

Note pour la prochaine fois que je voudrai faire un drag & drop de fichiers sur Firefox

Comme découvert grâce à ArthurHoaro, pour obliger le navigateur à gérer le drop de fichier sur une dropzone, il faut d'abord faire un preventDefault() sur les événements dragover et/ou dragenter.

solution N°1

On peut le faire en dur dans le HTML:

<div ondragover="return false">
<div ondragover="event.preventDefault()">

Ce qui peut même servir pour le ciblage du drop avec un sélecteur genre *[ondragover]

Solution N°2

On peut bien entendu également le définir directement dans le js:

document.getElementById("body").addEventListener("drop",function(e){
        console.log(e);
        e.preventDefault();
        e.stopPropagation();
})
document.getElementById("body").addEventListener("dragover",function(e){
        e.preventDefault();
        e.stopPropagation();
})
document.getElementById("body").addEventListener("dragenter",function(e){
        e.preventDefault();
        e.stopPropagation();
})

Je sers la programmation et c est ma joie   (1).jpg

Sources:

Astuce Javascript+html: confirmer lors d'un clic sur un lien

Je partage une petit truc vraiment tout con que je viens de tester pour une de mes applis de boulot.

J'avais besoin de confirmer vite fait et sans prise de tête le clic sur un lien «supprimer»: j'ai opté pour l'utilisation d'un attribut «confirm» et d'un bout de JS qui va bien.

Le code ci-dessous utilise ma petite betalib VanillaJS perso (http://cdn.warriordudimanche.net/VanillaJS.js) parce que j'avais la flemme de récrire la partie ciblage et foreach, mais vous aurez pigé le concept (c'est vraiment tout con)

HTML

<a href="https://warriordudimanche.net/?delete" confirm="true">Delete</a>

JS

on('click','a[confirm]',function(e){
        // La partie à mettre dans un évènement click
    e.stopPropagation();
    if (!confirm("Etes-vous certain ?")){
        e.preventDefault();
        return false;
    }
});

L'avantage, c'est qu'il suffit de coller l'attribut «confirm» sur un lien pour qu'il ne soit activé qu'en cas de confirmation.

Fil RSS des articles