Je sais que cette question a déjà été posée, mais après une recherche sur le Web, il semble que je ne trouve pas de réponse simple.
le HTML
<a id=myAnchor href=index.php>
le jQuery (les deux ne fonctionnent pas)
$('#myAnchor').click();
ou
$('#myAnchor').trigger('click');
Quel est le moyen le plus simple et le plus efficace d'y parvenir?
Essaye ça:
$('#myAnchor')[0].click();
Ça marche pour moi.
window.location = document.getElementById('myAnchor').href
Click déclenche simplement l'événement click/les événements et non l'action "goto-the-links-href".
Vous devez écrire votre propre gestionnaire puis votre $ ('# myAnchor'). Trigger ('clic'); marchera...
$("#myAnchor").click(function(event)
{
var link = $(this);
var target = link.attr("target");
if($.trim(target).length > 0)
{
window.open(link.attr("href"), target);
}
else
{
window.location = link.attr("href");
}
event.preventDefault();
});
<a href="#" id="myAnchor">Click me</a>
<script type="text/javascript">
$(document).ready(function(){
$('#myAnchor').click(function(){
window.location.href = 'index.php';
});
})
</script>
J'ai essayé quelques-unes des solutions ci-dessus mais elles n'ont pas fonctionné pour moi. Voici un lien vers la page qui a fonctionné pour moi cliquez automatiquement sur un lien
Le lien ci-dessus a beaucoup de solutions et voici celle qui a fonctionné pour moi,
<button onclick="fun();">Magic button</button>
<!--The link you want to automatically click-->
<a href='http://www.ercafe.com' id="myAnchor">My website</a>
Maintenant, dans les balises <script>
,
<script>
function fun(){
actuateLink(document.getElementById('myAnchor'));
}
function actuateLink(link)
{
var allowDefaultAction = true;
if (link.click)
{
link.click();
return;
}
else if (document.createEvent)
{
var e = document.createEvent('MouseEvents');
e.initEvent(
'click' // event type
,true // can bubble?
,true // cancelable?
);
allowDefaultAction = link.dispatchEvent(e);
}
if (allowDefaultAction)
{
var f = document.createElement('form');
f.action = link.href;
document.body.appendChild(f);
f.submit();
}
}
</script>
Copier coller le code ci-dessus et cliquer sur le bouton 'Magic button'
, vous serez redirigé vers ErCafe.com
.
Ajoutez onclick="window.location = this.href"
à votre élément <a>
. Après cette modification, il pourrait être .click()
ed avec le comportement attendu. Pour ce faire avec chaque lien sur votre page, vous pouvez ajouter ceci:
<script type="text/javascript">
$(function () {
$("a").attr("onclick", "window.location = this.href");
});
</script>
Essayez ceci pour la compatibilité;
<script type="text/javascript">
$(function() {
setTimeout(function() {
window.location.href = $('#myAnchor').attr("href");
}, 1500);
});
</script>
Si vous utilisez jQuery, vous pouvez le faire avec jQuery.trigger
http://api.jquery.com/trigger/
Exemple
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript" src="https://code.jquery.com/jquery-2.2.3.js"></script>
</head>
<body>
<a id="foo" onclick="action()"></a>
<script type="text/javascript">
function action(){
window.location.replace("http://stackoverflow.com/q/9081426/5526354")
}
$("#foo").trigger("click");
</script>
</body>
</html>