Czy istnieje sposób na kliknięcie linku na mojej stronie przy użyciu JavaScript?
.click()
na <a>
elemencie i zadziałało.
Czy istnieje sposób na kliknięcie linku na mojej stronie przy użyciu JavaScript?
.click()
na <a>
elemencie i zadziałało.
Odpowiedzi:
document.getElementById('yourLinkID').click();
target="_blank"
właściwość, w nowym oknie zostanie aktywowana funkcja blokowania wyskakujących okienek przeglądarki.
Ta funkcja działa przynajmniej w przeglądarkach Firefox i Internet Explorer. Uruchamia wszystkie programy obsługi zdarzeń dołączone do łącza i ładuje połączoną stronę, jeśli programy obsługi zdarzeń nie anulują domyślnej akcji.
function clickLink(link) {
var cancelled = false;
if (document.createEvent) {
var event = document.createEvent("MouseEvents");
event.initMouseEvent("click", true, true, window,
0, 0, 0, 0, 0,
false, false, false, false,
0, null);
cancelled = !link.dispatchEvent(event);
}
else if (link.fireEvent) {
cancelled = !link.fireEvent("onclick");
}
if (!cancelled) {
window.location = link.href;
}
}
target
atrybutu lub<base target="frame">
Jeśli chcesz zmienić tylko bieżący adres strony, możesz to zrobić, po prostu robiąc to w Javascript:
location.href = "http://www.example.com/test";
mailto:
Oddałem głos, ponieważ szukałem fajnego rozwiązania polegającego na kliknięciu linku w skrypcie userjs. Zdecydowanie zaoszczędził mi czas. Byłem przygotowany do stworzenia a
elementu i zrobienia jakiegoś "programowego kliknięcia" stackoverflow.com/questions/809057/ ...
click()
metodę zaproponowaną gdzie indziej i powyżej i nie działała ona w IE9, ale ustawienie location.href
faktycznie wysłało e-mail z mailto:
linku. Świetne rozwiązanie!
Po prostu tak:
<a id="myLink" onclick="alert('link click');">LINK 1</a>
<a id="myLink2" onclick="document.getElementById('myLink').click()">Click link 1</a>
lub podczas ładowania strony:
<body onload="document.getElementById('myLink').click()">
...
<a id="myLink" onclick="alert('link click');">LINK 1</a>
...
</body>
Sposób kliknięcia łącza w jQuery to
$('#LinkID').click();
W przypadku linku mailTo musisz napisać następujący kod
$('#LinkID')[0].click();
a
linku. Korzystanie z [0].click()
wersji działa, co moim zdaniem jest takie samo jak document.getElementById('yourLinkID').click();
odpowiedź.
Dla mnie udało mi się to w ten sposób działać. Wdrożyłem automatyczne kliknięcie w 5000 milisekund, a następnie zamknąłem pętlę po 1000 milisekundach. Wtedy było tylko 1 automatyczne kliknięcie.
<script> var myVar = setInterval(function ({document.getElementById("test").click();}, 500); setInterval(function () {clearInterval(myVar)}, 1000); </script>
Wiele z powyższych metod zostało wycofanych. Zaleca się teraz użycie konstruktora znalezionego tutaj
function clickAnchorTag() {
var event = document.createEvent('MouseEvent');
event = new CustomEvent('click');
var a = document.getElementById('nameOfID');
a.dispatchEvent(event);
}
Spowoduje to kliknięcie tagu kotwicy, ale nie będzie pokazywać, jeśli blokowanie wyskakujących okienek jest aktywne, więc użytkownik będzie musiał zezwolić na wyskakujące okienka.
Czy zamiast klikać, możesz przekierować do adresu URL, do którego prowadziło kliknięcie, za pomocą JavaScript?
Może mógłbyś umieścić coś w ciele OnLoad, aby iść tam, gdzie chcesz.
Możesz po prostu przekierować ich na inną stronę. Właściwie dosłowne kliknięcie linku i podróż do niego wydaje się nieuniknione, ale nie znam całej historii.
Nie możesz zmusić myszy użytkownika do niczego. Ale masz pełną kontrolę nad tym, co się stanie, gdy zdarzenie zostanie wyzwolone.
Możesz kliknąć na obciążenie ciała. W3Schools ma tutaj przykład .
Funkcja JS po stronie klienta, aby automatycznie kliknąć łącze, gdy ...
Oto przykład, w którym sprawdzasz wartość ukrytych danych wejściowych formularza, które przechowują błąd przekazany z serwera .. Twój klient JS następnie sprawdza jego wartość i wypełnia błąd w innym określonym przez Ciebie miejscu .. w tym przypadku wyskakującego okienka logowania.
var signUperror = document.getElementById('handleError')
if (signUperror) {
if(signUperror.innerHTML != ""){
var clicker = function(){
document.getElementById('signup').click()
}
clicker()
}
}