Maison > interface Web > js tutoriel > le corps du texte

JavaScript clique automatiquement sur les liens pour empêcher de contourner l'accès au navigateur

高洛峰
Libérer: 2017-01-21 11:12:19
original
2061 Les gens l'ont consulté

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(&#39;auto&#39;)">
 
<a id=&#39;auto&#39; href=".$url."><img border=&#39;0&#39; src=&#39;images/alipaylog.gif&#39; /></a>
 
</body>
 
<script type="text/javascript">
 
 
 function autoclick(){
 
 lnk = document.getElementById("auto");
 
 lnk.click();
 
  }
 
</script>
Copier après la connexion

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(&#39;auto&#39;)">
 
<a id=&#39;auto&#39; href=".$url."><img border=&#39;0&#39; src=&#39;images/alipaylog.gif&#39; /></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>
Copier après la connexion

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(&#39;HTMLEvents&#39;);
 
    ev.initEvent(&#39;click&#39;, false, true);
 
    card.dispatchEvent(ev);
 
   }
 
   else
 
     card.click();
 }
Copier après la connexion

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(&#39;auto2&#39;)">
 
 <input id="auto2" type="hidden" onClick="javascript:location.href = &#39;<?=$url?>&#39; " />
 
</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>
Copier après la connexion

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 !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal