La superposition de cadre chrome Google fonctionne uniquement une fois

J'ai une page qui demande une installation Google Chrome Frame si l'utilisateur utilise un navigateur désuet.

Cela fonctionne très bien si l'utilisateur choisit d'installer le plugin. Mais, s'il choisit de ne pas l'installer et de fermer le calque; Il est impossible d'ouvrir la couche à nouveau en utilisant le même bouton. (Fondamentalement, cela ne fonctionne qu'une fois.)

Est-ce que je peux forcer Google Chrome Frame à ouvrir chaque fois que je clique sur l'installation?
(J'ai essayé de forcer un cookie, mais ne semble pas fonctionner.)

Mise à jour [# 1]:

Page de test ici .

<!doctype html> <html> <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <!--[if IE]> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1.0.3/CFInstall.min.js"></script> <![endif]--> </head> <body> <a href="#" class="dngcf">Prompt</a> <script> $(function(){ if( $.browser.msie && $.browser.version < 9 ){ if( navigator.userAgent.indexOf('chromeframe') < 0 ){ $('.dngcf').bind('click', function(){ //document.cookie = 'disableGCFCheck=0;path=/;'; CFInstall.check({ url: 'http://www.google.com/chromeframe/eula.html?user=true', mode: "overlay", destination: "http://mywebsite.com" }); }); }else{ alert('GCF is already installed'); } }else{ alert('You need IE 6, 7 or 8 in order to see the "bug".'); } }); </script> </body> </html> 

Mise à jour [# 2]:

Cela semble être un problème lié à la session .
Lorsque je redémarre le navigateur, le lien fonctionne à nouveau une fois. Mais, cependant, quand je ne rafraîchis que la page.

[conclusion]

Ce comportement est par conception . Il permet à un administrateur de check() pour GCF sur chaque page, sans irriter l'utilisateur avec une invite à chaque fois.

La réponse acceptée vous permet de contourner ce comportement.

Vous avez raison sur le cookie, mais cela implique également une variable privée quand il montre le popup, alors sans pirater le script cfinstall, nous examinons les méthodes existantes.

C'est le meilleur que je puisse obtenir. Il y a un problème où, en appuyant sur "annuler", puis "fermer" signifie que la popup est toujours sur la 2ème page lorsque vous rétablissez la configuration, mais vous pouvez l'installer à partir de là, donc je ne pense pas que ce soit un gros problème. (Le pédant en moi ne l'aime pas cependant!)

 <!doctype html> <html> <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <!--[if IE]> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1.0.3/CFInstall.min.js"></script> <![endif]--> </head> <body> <a href="#" class="dngcf">Prompt</a> <script> $(function(){ if ($.browser.msie && $.browser.version < 9){ if (navigator.userAgent.indexOf("chromeframe") < 0){ $(".dngcf").on("click", function(){ if ($(".chromeFrameOverlayContent").length > 0) { $(".chromeFrameOverlayContent, .chromeFrameOverlayUnderlay").show(); } else { CFInstall.check({ url: "http://www.google.com/chromeframe/eula.html?user=true", mode: "overlay", destination: "http://mywebsite.com" }); $("#chromeFrameCloseButton").off("click").on("click", function() { $(".chromeFrameOverlayContent, .chromeFrameOverlayUnderlay").css({ display: "none" }); }); } }); } else { alert('GCF is already installed'); } } else { alert('You need IE 6, 7 or 8 in order to see the "bug".'); } }); </script> </body> </html>