Bonjour,

Voiçi ce que je voudrai faire : Quand un utilisateur est sur mon site, je détecte le click sur n'importe quel lien et je lui affiche une boite de dialogue du beforeunload. S'il clique sur Quitter, il quitte effectivement, sinon une page d'enquête sera ouverte...(les spec sont comme ca !)
J'arrive à faire la deuxième partie mais par contre la première non car pour le er cas (quitter) la page d'equête est ouverte quand même ( dans la toute première visite car je crée un cookie)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
$(document).ready(function () {
    var confirmMsg = 'Please provide your feedback.';
    function isInternal(anchor) {
        var patt = new RegExp("^http://mon.site.com/+.*", "i");
        return patt.test(anchor.href);
    }
    function handler(e) {
        setTimeout(function () {
            $(window).unbind("beforeunload");
            $.cookie("survey", true, {
                path : "/",
                expires : 365
            });
            window.open("<survey-url>", "_blank");
            var event = (e || window.event)
            if (event) {
                event.returnValue = confirmMsg
            }
        }, 50);
        // For Safari
        return confirmMsg;
    }
    $("a").click(function (event) {
        // external link
		if (!isInternal(this)) {
            if ($.cookie("survey") == null) {
                $(window).on('beforeunload', handler);
            }
        }
    });
});