• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Edycja skryptu przeglądarki internetowej (dodanie funkcji czasu wykonania skryptu)

0 głosów
63 wizyt
pytanie zadane 13 lutego w JavaScript, jQuery, AJAX przez gleba4670 Nowicjusz (120 p.)
zmienione kategorie 13 lutego przez Patrycjerz

Witam. Może dziwne pytanie, ale ja się na tym niezbyt znam i chociaż próbowałem to nic z tego. Mamy taki skrypt, który kilka na wyskakujące "bańki" i pomija reklamy. Mam następujące pytanie. Czy jest możliwość dodania do tego skryptu coś takiego, żeby ten skrypt nie klikał od razu na te wyskakujące bańki, tylko, żeby jak wyskoczy bańka to kliknął ale w losowym czasie w przedziale powiedzmy od 0,5 do 2 sekund? Jest taka możliwość? Jakieś jeszcze informacje muszę podać?

// ==UserScript== 
// @name Pro 
// @namespace Daniel 
// @version 1.3 
// @description Auto click 
// @author Daniel 
// @match 
// @grant none 
// ==/UserScript== 

setInterval(function() { 
window.location.reload(); 
}, 170000); 

$(document).ready(function(){ 
var coinsclicker = setInterval(function() { 
ClickNext(); 
ClickOnBubble(); 
}, 1000); 

window.ClickNext = function(){ 
if ($(".coins_popup").length > 0) { 
console.log("clicked"); 
$(".coins_popup").click(); 
} 
}; 
window.ClickOnBubble = function(){ 
if ($(".sweet-alert.showSweetAlert.visible").length > 0) { 
console.log("clicked"); 
$(".confirm").click(); 
} 
}; 
});
komentarz 13 lutego przez Vellur Bywalec (2,930 p.)
Jeżeli dobrze zrozumiałem, to przed kliknięciem wystarczy dodać sleep, a jego wartość wylosować z danego przedziału za pomocą random.
komentarz 13 lutego przez gleba4670 Nowicjusz (120 p.)
edycja 13 lutego przez Patrycjerz

Godzinę już czytam i oglądam filmiki na yt jak to dodać i dalej nie wiem.

Ta cześć skryptu odnosi się do klikania w wyskakujące bańki:

window.ClickOnBubble = function(){  
if ($(".sweet-alert.showSweetAlert.visible").length > 0) {  
console.log("clicked");  
$(".confirm").click();  
}  
};  
});

Nie chciałem pytać, ale muszę, bo jednak elektryk tego nie ogarnie (czyli ja). Mógłbyś to wpisać w tę część skryptu i podać jak to ma wyglądać gotowe?

komentarz 13 lutego przez JSHolic Maniak (68,450 p.)
setInterval(function() { 
    window.location.reload(); 
}, 170000); 

Dlaczego w setInerval odświeżasz stronę? Czy wiesz, że to za bardzo nie ma sensu, ponieważ po odświeżeniu cały skrypt wczytywany jest od nowa? Tu bardziej setTimeout pasuje.

jak wyskoczy bańka to kliknął ale w losowym czasie w przedziale powiedzmy od 0,5 do 2 sekund

Jeśli dobrze rozumiem, to poniższy interwał chcesz wykonywać w losowym czasie, a nie co sekundę (wstawione tam 1000 milisekund):

var coinsclicker = setInterval(function() { 
    ClickNext(); 
    ClickOnBubble(); 
}, 1000);

Zatem dla przedziału od 0.5 - 2 sekund, zapisz tam Math.random() * (2 - 0.5) + 0.5. Link do przykładu z dokumentacji metody Math.round.

1 odpowiedź

0 głosów
odpowiedź 13 lutego przez Ignobiles Początkujący (420 p.)
Spróbuj SetTimeout

Podobne pytania

0 głosów
1 odpowiedź 75 wizyt
pytanie zadane 27 października 2017 w JavaScript, jQuery, AJAX przez SzymonSmith Użytkownik (670 p.)
0 głosów
2 odpowiedzi 62 wizyt
0 głosów
2 odpowiedzi 122 wizyt
pytanie zadane 2 sierpnia 2016 w JavaScript, jQuery, AJAX przez Patryk Rafał Bywalec (2,410 p.)
Porady nie od parady
Pytania na temat serwisu SPOJ należy zadawać z odpowiednią kategorią dotyczącą tej strony.
Ciekawy innych porad? Odwiedź tę stronę!

45,730 zapytań

86,123 odpowiedzi

171,994 komentarzy

22,186 pasjonatów

Przeglądających: 308
Pasjonatów: 25 Gości: 283

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...