Maison > Article > interface Web > JavaScript clique automatiquement sur les liens pour empêcher de contourner l'accès au navigateur
Pour vous connecter à votre compte Alipay, vous devez avoir un effet, c'est-à-dire que lorsque vous ouvrez la page de lien, vous n'avez pas besoin de cliquer sur le lien et d'accéder directement à la page de connexion Alipay. En d’autres termes, vous devez créer un effet qui clique automatiquement sur le lien.
Utilisez essentiellement ceci :
<body onLoad="autoclick('auto')"> <a id='auto' href=".$url."><img border='0' src='images/alipaylog.gif' /></a> </body> <script type="text/javascript"> function autoclick(){ lnk = document.getElementById("auto"); lnk.click(); } </script>
Ceci peut être utilisé dans IE, mais pas dans d'autres navigateurs. C’est aussi écrasant de faire perdre du temps à tout le monde à chercher.
Le suivant est relativement fiable, jetons-y d'abord un coup d'œil :
<body onLoad="autoclick('auto')"> <a id='auto' href=".$url."><img border='0' src='images/alipaylog.gif' /></a> </body> <script type="text/javascript"> 1: function autoclick(name) { if(document.all) { //alert(1); document.getElementById(name).click(); } else { var evt = document.createEvent("MouseEvents"); evt.initEvent("click", true, true); //alert(2); document.getElementById(name).dispatchEvent(evt); } } </script>
Cela fonctionne bien sous Chrome et IE, mais il ne fonctionne pas sous Firefox. Mais c'est mieux que le premier.
dispatchEvent pose problème sous Firefox, voici la solution :
document.getElementById("me").onclick = function() { var card = document.getElementById("card"); if(document.createEvent){ var ev = document.createEvent('HTMLEvents'); ev.initEvent('click', false, true); card.dispatchEvent(ev); } else card.click(); }
L'élément card est l'élément auquel l'événement est lié . L'élément me est l'élément qui souhaite appeler l'événement de clic de la carte en cliquant sur l'élément me. . . .
Le point clé du problème est que le moteur js de Firefox doit d'abord créer un événement : var ev = document.createEvent('HTMLEvents');
Puis spécifiez l'événement comme un événement de clic : ev.initEvent( 'click', false, true);
Enfin payer l'événement à l'élément card : card.dispatchEvent(ev);
card = document.getElementById('id ');
var ev = document.createEvent('HTMLEvents');
ev.initEvent('click', false, true);
card.dispatchEvent( ev);
On peut voir que dispatchEvent est la dernière étape de la délégation d'événement, reliant l'événement délégué à l'élément appelant pour obtenir l'effet d'appeler l'événement de cet élément.
Enfin, il est recommandé d'utiliser la saisie. Voici la solution finale :
<body onLoad="autoclick('auto2')"> <input id="auto2" type="hidden" onClick="javascript:location.href = '<?=$url?>' " /> </body> <script type="text/javascript"> 1: function autoclick(name) { if(document.all) { //alert(1); document.getElementById(name).click(); } else { var evt = document.createEvent("MouseEvents"); evt.initEvent("click", true, true); //alert(2); document.getElementById(name).dispatchEvent(evt); } } </script>
Le lien JavaScript ci-dessus clique automatiquement pour empêcher. contourner La méthode d'accès au navigateur concerne tout le contenu partagé par l'éditeur. J'espère qu'il pourra vous donner une référence, et j'espère également que tout le monde soutiendra le site Web PHP chinois.
Pour plus de liens de clic automatique JavaScript et de méthodes pour empêcher le contournement de l'accès au navigateur, veuillez faire attention au site Web PHP chinois pour les articles connexes !