Javascript? Javascript.

  • Hallo zusammen,

    ich plane, nachdem ich recht fit mit Autoit bin, nun zusätzlich auch Javascript zu lernen. Hat hier jemand gute Tutorials die er empfehlen könnte? In keinem Tutorial das ich bisher finden konnte wird gezeigt, wie man mit Javascript Websites automatisiert, sondern immer nur wie man serverseitig Javascript ausführt. Es ist aber für mein Übungsprojekt so, dass ich die (test-) Intranetseite unserer Firma benutzen darf zum Lernen und folglich das script lokal ausgeführt wird und die Website so bearbeitet. Das soll deshalb so sein, da wir planen unser Ticketsystem, welches über eine Website funktioniert, mit Vorlagen schließen zu können bei Standardthemen.

    Ich habe mir mal iMacros angeschaut, weil ein Kollege meinte damit ließe sich vieles automatisieren und (eigentlich) auch javascript Code ausführen. Das ist aber nicht so, iMacros bringt immer nur Fehlermeldungen wenn ich das Script ausführen mag (in Firebug getestet und dort funktioniert es, also ist der Code ansich richtig..)

    Vielleicht kann mir jemand helfen.

    Wenn nicht, dann nicht :P

    LG,
    der Robert

  • Was bitte hast du gefunden, wenn du serverseitige Javascript Ausführung gefunden hast? Javascript ist immer Ausführung BEIM Client.
    Was soll denn die Endanwendung sein, welche automatisiert sein soll? Grundsätzlich gibt es nix, was man nicht durch WinHTTP lösen könnte, anstelle von Javascript.

    Wenn du planst Javascript zu lernen, dann lerne es nicht um eine (dir nicht gehörige) Website automatisch zu bedienen.

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • Ausgeführt wird JS eigentlich immer lokal.
    Der Server schickt nur den JS-Code zu einer Webseite mit aber die Ausführung erfolgt dann im Browser des Users.
    Eine Ausnahme hierzu wäre Node.js. Dort wird tatsächlich JS serverseitig zum Erstellen und Ausliefern der HTML-Inhalte verwendet.

    Der einzige Unterschied den ich bei dir sehe ist, ist dass die Quelle des JS-Skriptes unterschiedlich ist. Der Code wird nicht vom Webserver mitgeliefert sondern kommt lokal zur Webseite hinzu.
    Das ist für den Inhalt des JS-Codes aber völlig unerheblich.
    Die Tutorials welche erklären wie man JS in seinen Webseiten verwenden kann sind also auch durchaus auch für deine Aufgabenstellung geeignet.

    Wie bringt man nun eigenen JS-Code für eine Webseite zum laufen?
    Für mich schreit das geradezu nach Greasemonkey (bzw. Tampermonkey). Gibts für FireFox und Chrome.
    Das ist ein Addon bei dem man JS-Skripte erstellen kann und so einbinden dass diese automatisch bei bestimmten Seiten aufgerufen werden.

  • Zum Beispiel hier:
    http://www.webworker.club/javascript-ler…rammiersprache/

    Hier wird Code geschrieben und noch in der selben Datei auch das script hinterlegt. Wenn ich das auf unserer Testseite allerdings mache, dann muss ich das Script ja über den Browser aufrufen, wodurch dieses dann ja im falschen Fenster ausgeführt wird. Deshalb frage ich mich, wie ich das anstelle, dass er das im aktuellen Fenster macht?

    Und warum sollte ich das nicht dürfen wollen? Wenn mein Teamleiter mich fragt ob ich das machen mag, soll ich dann sagen nö? Wenn es mich eigentlich interessiert javascript zu lernen?

    Nachtrag@Aspirin: Ja, Greasemonkey habe ich auch getestet, aber das Problem ist, dass dieser das bei einer bestimmten Website macht. Ich bräuchte es quasi "auf Knopfdruck", da wir ja verschiedene Templates haben für verschieden Standardantworten und diese nicht immer zum Einsatz kommen.

  • @DasIch lies lieber nochmal nach, was Server und Cleintseitig ist.
    Fürs aktuelle Fenster ist das, was AspirinJunkie sagte schon die Lösung.


    Was genau willst du nun eigentlich realisieren? Ich rieche hier das x-Y Problem.

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • Dennoch müsste ich die .js Dateien dann alle erstmal doppelklicken, um sie auszuführen. Da würden sie dann auch in einem neuen Tab ausgeführt werden statt einfach nur das Script. Zudem wüsste ich nicht, wie ich das richtige Browserfenster ansteuern kann (habe meist mehrfach Firefox gleichzeitig offen). Da kann ich auch bei unseren jetzigen .txt-Dateien bleiben. Ist dann im Prinzip genauso umständlich ^^

    Ich will unser Ticketsystem insoweit automatisieren, dass wir für Standardprobleme a la "citrix funktioniert nicht, eingeschränkte Konnektivität" o.ä. erstmal unsere Standardantworten zurückschicken können und das bequem per Tastendruck und ohne Copy & Paste. Und das ist ein gutes Thema zum Lernen der Sprache.

    Was ist ein x-Y Problem?

  • X-Y-Problem: Du suchst einen Weg zu etwas. Hast eine Idee und fragst danach. Dabei erwähnst du nur X. Das Tatsächliche Problem, was gemacht werden soll (Y) wird dabei nicht genannt. (Hast du ja in dem Beitrag jetzt gemacht.)

    Es gehen also Mitarbeiter auf die Seite, geben dort an, dass ein Problem vorliegt, dann wirst du benachrichtigt und möchtest, dass sie auf der Website deine Antwort sehen?

    Allgemein:
    JavaScript steht im Quellcode der Website (.js Dateien sind dazu da, in HTML-Dateien eingebunden zu werden. Im Prinzip also nur reinkopiert werden -> dient der Übersichtlichkeit und Mehrfachverwendung). Wenn du die mit doppelklick startest wird das JavaScript einfach in einem leeren HTML-Document ausgeführt.
    Der SERVER sendet einfach den Text, also den Quellcode an denjenigen, der die Website aufruft. Bei demjenigen, der es Aufruft wird es dann auch ausgeführt.

    Anders ist es bei PHP. Das wird in die HTML-Datei eingefügt (dann .php). Fragt ein User die Website an, führt der Server den PHP-Code aus und sendet dann das ganze an den Clienten.

    Evtl. Kannst du genauer darauf eingehen, wie das Ticket erstellt wird, woran du es merkst und wie du dann die Antwort sendest.

  • Das hier

    Na da kommen wir dem ganzen doch schon mal näher. Lassen wir erstmal kurz JavaScript außer Augen, und beschränken uns auf das Problem an sich:
    - Ihr bekommt ein Ticket rein
    - Du klickst drauf
    - Dort befindet sich in Antwortfeld in das die automatische Antwort eingetragen soll
    - Du lässt sie eintragen und zurückschicken

    Richtig aufgefasst? Am besten erklärst du den Ablauf, denn eventuell kann man das auch direkt mit AutoIt realisieren.

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • Xorianator: Ja, richtig aufgepasst. Hier der Ablauf.

    - User meldet über Webinterface ein Problem.
    - Dieses läuft bei uns im Ticketsystem ein (Sharepoint Seite) und wir haben die "Bearbeiter-Ansicht".
    - Wir tragen die Lösung in das Antwortfeld ein und
    - schließen das Ticket über ein formsubmit

    Realisierung mit Autoit ist sicher möglich, allerdings bin ich in autoit schon fit und da wäre es "nichts neues" das damit zu bewerkstelligen. Deshalb möchte ich es in Javascript machen :)

    Danke an alle Antworten bisher und entschuldigt die Verwirrung.

  • Dann denke ich, dass Greasemonkey da die richtige Lösung wäre. Du würdest mit dem Greasemonkey Script z.B. eine "Leiste von Buttons" erzeugen, welche verschiedene Antworten repräsentieren. Drückst du diesen Button, wird automatisch diese Antwort des dazugehörigen Buttons im Antwortfeld eingetragen.
    Letzte Arbeit für dich: Submit drücken.

    Alternativ kannst du diese Seiten ja auch mit der _FF oder _IE UDF aufrufen und dann damit weiterarbeiten.

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal