Iomega (22.12.2022)
Thema: Script Hilfe Keybind
-
15.12.2022, 15:00 #1
Script Hilfe Keybind
Hallöchen ich habe ein Problem.
Ich würde gerne mein Script erweitern, bin in Sachen Programmierung eine vollkommene Niete .
Klar, die ein oder andere Sache habe ich hinbekommen, aber mit meinem vorhaben scheitere ich gerade und bitte daher hier um Hilfe.
Es geht um ein Script Addon für Chrome das sich Tampermonkey nennt.
Dort hat mir jemand ein gewünschtes Script geschrieben, welches ich dann mit Glück etwas erweitern konnte, einfach weil ich mich noch ein wenig mit Variablen auskannte.
Das war es aber auch und nun stehe ich auf dem schlau.
Ich möchte:
Das das Script, nach dem erfolgreichen Neu Laden einer Webseite, einen Keybind ausführt.
Als Beispiel:
Heißt, das Script läuft, wartet... Event beginnt, Script führt den Reload aus (Seite lädt einmal neu), wartet paar Sekunden und drückt dann automatisch zb. STRG + ENDE.
Der Grund warum ich das möchte: Chrome erlaubt ja: Tastenkombinationen womit extension ausgelöst werden. Und genau das möchte ich damit erreichen.
Oder wäre es möglich, dass er dann ein Autohotkey-Skript ausführt? Denn das löst es auch aus.
Script Ohne Versuch:
Code:// ==/UserScript== (function() { 'use strict'; document.title = "ReloadxRecord" const timeToWait = 15; // in seconds //waits a few seconds before checking if someone is live setTimeout(() => { // only check if channel isn't already live when the script started (main use for reloading the page if live) if (document.querySelector('.twilight-main .live-indicator-container') === null) { checkIfLive(); } else { const current = new Date(); const time = current.toLocaleTimeString("de-DE"); console.log(" %c�� Reload was successful ⌛⌛ " + time + " ⌛⌛ channel is live ��","background:green;color:#fff;font-size: x-large"); } }, timeToWait * 1000); function checkIfLive() { if (document.querySelector('.twilight-main .live-indicator-container') !== null) { //reload page because channel is live: location.reload(); } const current = new Date(); const time = current.toLocaleTimeString("de-DE"); console.log(" %c�� Channel is not live ⌛⌛ " + time + " ⌛⌛ checking again... ��","background:red;color:#fff;font-size: x-large"); setTimeout(() => checkIfLive(), timeToWait * 1000); } })();
Code:// ==/UserScript== (function() { 'use strict'; document.title = "ReloadxRecord" const timeToWait = 15; // in seconds //waits a few seconds before checking if someone is live setTimeout(() => { // only check if channel isn't already live when the script started (main use for reloading the page if live) if (document.querySelector('.twilight-main .live-indicator-container') === null) { checkIfLive(); } else { const current = new Date(); const time = current.toLocaleTimeString("de-DE"); console.log(" %c�� Reload was successful ⌛⌛ " + time + " ⌛⌛ channel is live ��","background:green;color:#fff;font-size: x-large"); } }, timeToWait * 1000); function checkIfLive() { if (document.querySelector('.twilight-main .live-indicator-container') !== null) { //reload page because channel is live: location.reload(); } const current = new Date(); const time = current.toLocaleTimeString("de-DE"); console.log(" %c�� Channel is not live ⌛⌛ " + time + " ⌛⌛ checking again... ��","background:red;color:#fff;font-size: x-large"); document.onkeyup = function(e) { if (e.ctrlKey && e.which == 35) { alert("strg+end key was pressed"); } } setTimeout(() => checkIfLive(), timeToWait * 1000); } })();
Ich bedanke mich vielmals
GrüßeGeändert von Iomega (18.12.2022 um 01:11 Uhr)
-
21.12.2022, 00:52 #2
AW: Script Hilfe Keybind
Moin,
eigentlich kann es mir egal sein, ein bisschen stören tut es mich aber trotzdem:
[...] Dort hat mir jemand ein gewünschtes Script geschrieben [...]
Ich bin auf meine Pasta stolz! (so halb)
Ich verstehe, dass du dieses Problem in mehreren Foren postest um deine Chance auf eine Antwort zu erhöhen, finde es aber trotzdem ein wenig schwach.
[...] Zumal ich Arbeiten muss und [...]
Mag sein, dass ich zu viel auf Kleinigkeiten rumreite.
Um on-topic zu bleiben:
Das Problem ist, dass du den Code nicht verstehst (und um Gottes Willen, das ist auch nicht schlimm, mit dem könnte man nämlich ne gute und leckere Spaghetti Bolognese kochen) und dadurch nicht weißt, welche Logik genau was macht und abbildet.
Code:document.onkeyup = function(e) { if (e.ctrlKey && e.which == 35) { alert("strg+end key was pressed"); } }
Aber das hilft dir in dem Anwendungsfall nicht. Du musst dieses Event "simulieren", bzw. selbst erzeugen.
Es muss in folgendem Abschnitt eine Anpassung erfolgen:
Code:else { const current = new Date(); const time = current.toLocaleTimeString("de-DE"); console.log(" %c�� Reload was successful ⌛⌛ " + time + " ⌛⌛ channel is live ��","background:green;color:#fff;font-size: x-large"); }
Füg mal folgendes nach dem Log Statement im else Block ein:
Code:window.dispatchEvent(new KeyboardEvent("keydown", { key: "End", keyCode: 35, code: "End", which: 35, ctrlKey: true }));
Note: Hab es nur mit einem keydown listener in der Entwicklerkonsole getestet. Ob damit auch dein Makro gestartet wird, kann ich nicht sagen.
-
The Following User Says Thank You to Manipulate For This Useful Post:
-
22.12.2022, 09:14 #3
AW: Script Hilfe Keybind
Hallöchen ,
zu deinen anliegen: Jeder der fragt, kriegt das volle Script, bis Heute habe ich deinen Namen daraus NICHT entfernt, warum auch, gibt keinen Grund .
Ich habe nur paar Kommis entfernt, die nicht mehr stimmten und das auch nur, um es so kurz wie möglich zu halten.
In den Englischen Foren wird es denen leider auch nicht viel bringen, wenn ich sage User XYZ hat es geschrieben den es dort aber nicht gibt. Oder wenn ich sage User X aus Forum Y, dann habe ich direkt einen Ban wegen Werbung.
Und ich habe es in vielen Foren drin, nirgends habe ich den Header drin da es ja um den Code geht, sollte ja auch logisch sein und im Header sind ja auch die URLs die denen leider ebenfalls nix angehen, daher mache ich es so wie jeder und poste nur den Code um den es geht. Das hat nichts mit dir zu tun, du hattest leider keine Zeit und bevor ich dich weiter störe oder mich wieder falsch verstehst, habe ich es so versucht.
Und was soll ich sonst groß tun, wenn ich es nur hier habe, antwortet man mir mit Glück, nur vllt... Hast ja gesehen, geantwortet hast nur du. Und bevor ich gar keine Antwort kriege, versuche ich es verständlicherweise auch woanders um wie du schon sagtest meine Chance zu erhöhen mein Problem gelöst zu bekommen.
Mit Kleinigkeiten oder so, hat niemand was gesagt, daher alles gut.
Aber weiter gehts im Takt:
Das stimmt, das is ja das Problem, ich kann kein Javascript, als du mir den Tipp mit der Variable gegeben hast, konnte ich froh sein das ichs mit der Zeit in der Console hinbekommen habe, das war es aber auch .
Danke für deine Ergänzung, ich werde es mal ausprobieren.
EDIT: So, nach jeglichen Test geht dies wohl leider nicht, egal ob nur die keys, oder script mit keys etc.. hab beide Möglichkeiten getestet .
Javascript kann leider nicht übergreifend agieren oder im Browser ausbrechen, wodurch dies so gerade nicht geht :S .
Ich danke dir aber für deine Mühe.
Ab jetzt heißt es: Addon ändern oder ein eigenes bauen oder halt Selenium xD
Das kann ja was werden ...
Ich bedanke mich aber vielmals
GrüßßßeeeeeGeändert von Iomega (22.12.2022 um 09:23 Uhr)
Ähnliche Themen
-
Script wenn "Wörter" gefunden Reload Site/Script when "words" found Reload site
Von Iomega im Forum SkriptsprachenAntworten: 12Letzter Beitrag: 27.11.2022, 11:59 -
[Shell Script]Upload Script (7z & ncftp)
Von Sq252 im Forum ShowroomAntworten: 0Letzter Beitrag: 08.01.2012, 18:12 -
Facebook Script // Hilfe !
Von Fire im Forum Internet und TechnikAntworten: 11Letzter Beitrag: 16.12.2011, 00:40 -
[Hilfe] Brauche hilfe bei Visual Basic
Von Anonymous im Forum SonstigeAntworten: 3Letzter Beitrag: 25.11.2011, 23:36 -
K-Script Bot FAQ
Von JackThursby im Forum Knuddels AllgemeinAntworten: 6Letzter Beitrag: 22.10.2011, 22:55
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.