JS, Links nacheinander ausführen
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
abschicken
ansatz
ansprechen
bier
code
dank
eindeutige namen
einzelnen links verschiedene plunder
fenster
flaute
form
frage
funktion
http
item
nutzen
objekt
stock
url
ziel
-
Hi,
nun habe ich auch mal wieder eine Frage wie ich es am besten anstelle.
Ich möchte mehrere Links / Klicks nacheinander ausführen lassen.
Wenn man zum Bsp. auf „ ausführen“ klickt werden im Hintergrund per JS verschiedene Links ausgeführt.
Der User sollte am Ende evtl. ein "alert" bekommen das alles erledigt wurde, der jeweilige Link soll nicht angezeigt werden, nur ausgeführt.Das Ganze soll wieder über Greasmonkey ausgeführt werden.
Einige Links werden mit und andere ohne Funktion ausgeführt.
// Link 1 <a style="text-decoration:none; " href="http://koeln.pennergame.de/stock/newplunder/execboost/?pid=70">G-Bier</a> //Link 2 <a style="text-decoration:none; " href="javascript:unarmPlunder(0)">Rostiges</a> // weitere folgen dann noch
Es kommen noch weitere Links dazu, die nur mal als Beispiel. Ich möchte nun mit einem Klick die Links in bestimmter Reihenfolge abarbeiten. Wie immer fehlt mir da jetzt der Ansatz, hab zwar mal Google gequält die Woche über, aber wirklich fündig bin ich nicht geworden.
Gruß und schönen Restsonntag
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Links mit URLs als Ziel kannst du per AJAX-Request ausführen…
Mit JS-Funktionen wirst du dir schon schwerer tun… wäre dein JS in der Seite normal integriert würdest du die Funktion einfach aufrufen, da du aber greasemonkey verwendest kann ich dir nicht sagen, ob das so auch funktioniert (das läuft doch in einer eigenen Sandbox?)… -
Sandbox? Ich definiere das jetzt mal als isolierter Bereich, dann ja das ist es. Aber ich habe Zugrif auf die jeweiligen Funktionen, nutze Sie ja derzeit um die Links einzeln aufzurufen. Für
,ist das hier die Funktion zb.href="javascript:unarmPlunder(0)"
function unarmPlunder(slot) { document.forms.unarm.slot.value = slot; document.forms.unarm.submit(); }
AJAX-Request werde ich gleich mal schauen was da machbar ist,
da hab ich zumindest mal nen Ansatz, das vereinfacht das suchen. -
aff3m1tw4ff3 schrieb:
Ach, Du möchtest also Deine Skills in unterschiedlichen Online-Spielen pushen?
Wenn man zum Bsp. auf „ ausführen“ klickt werden im Hintergrund per JS verschiedene Links ausgeführt.
...
// Link 1 <a style="text-decoration:none; " href="http://koeln.pennergame.de/stock/newplunder/execboost/?pid=70">G-Bier</a> //Link 2 <a style="text-decoration:none; " href="javascript:unarmPlunder(0)">Rostiges</a>
Sag doch gleich, dass es sich um ein persönliches Betteltool für Dich handelt.
AJAX ist dafür nicht notwendig, (bzw sogar unsinnig), und den GreaseAffen brauchste auch nicht.
Oder täusche ich mich? -
Nein sowas würde ich nicht tun :)
Du täuscht dich in diesem Fall, es sollen mit den einzelnen Links verschiedene "Plunder" angelegt bzw. abgelegt werden.
Normal sind das halt recht viele Klicks bis ans Ziel, das möchte ich damit abkürzen.
-
aff3m1tw4ff3 schrieb:
Sorry, leider kenne ich die Scripts von pennergame.de nicht, aber Möglichkeiten gibts sicherlich mehrere.
es sollen mit den einzelnen Links verschiedene "Plunder" angelegt bzw. abgelegt werden.
Normal sind das halt recht viele Klicks bis ans Ziel, das möchte ich damit abkürzen.
Z.B.:
Form zum auswählen der Items, zum Schluss dann -> abschicken
oder
Direktlinks (h ref) zum an/abgelegen.
Form oder Links sollten dann eindeutige Namen oder IDs zum ansprechen über JS haben.
Wenn es keinen token gibt, gehts auch ohne Greasemonkey, sonst halt mit. -
aff3m1tw4ff3 schrieb:
Du täuscht dich in diesem Fall, es sollen mit den einzelnen Links verschiedene "Plunder" angelegt bzw. abgelegt werden.
Normal sind das halt recht viele Klicks bis ans Ziel, das möchte ich damit abkürzen.
Also täuscht er sich wohl nicht, denn dieses Abkürzen normaler, vorgegebener Spielverläufe fällt mit unter den Begriff des cheatens. Die Nutzungsbedingungen von Pennergame sind, was das betrifft, übrigens recht eindeutig. -
Morgens,
danke für die Ansätze.
menschle schrieb:
Form zum auswählen der Items, zum Schluss dann -> abschicken
oder Direktlinks (h ref) zum an/abgelegen.
Form oder Links sollten dann eindeutige Namen oder IDs zum ansprechen über JS haben.
Auf ein Form würde ich gern verzichten, es sind immer die gleichen Links die ausgeführt werden sollen,
wirklich was auswählen muss der Nutzer also nicht.
fatfreddy schrieb:
Also täuscht er sich wohl nicht, denn dieses Abkürzen normaler, vorgegebener Spielverläufe fällt mit unter den Begriff des cheatens. Die Nutzungsbedingungen von Pennergame sind, was das betrifft, übrigens recht eindeutig.
Ich zwinge ja niemanden es zu nutzen, aber Da hast Du natürlich recht
Ich habe jetzt mit ein bissl Google und gutem Willen folgendes zusammen bekommen,
function abrüsten(){ window.open("http://koeln.pennergame.de/stock/newplunder/execboost/?pid=70"); window.open("javascript:unarmPlunder(0)"); window.open("Seite3.html"); window.open("Seite4.html"); } <a href="javascript:abrüsten()">Jetzt abrüsten</a>
Das sollte ja nach meinem Verständniss in 4 neuen Fenstern/Tabs die Links öffnen wenn ich auf Jetzt abrüsten klicke, macht es aber nicht. Es passiert leider garnichts. Vieleicht hat ja jemand eine Idee wo ich mich da nu zu glatt anstelle, soviel ist ja in der Funktion incht was falsch gemacht werden kann.
-
aff3m1tw4ff3 schrieb:
Kann es auch nicht, denn eine Funktion abr ü sten() ist schlichweg unmöglich.
function abrüsten(){ window.open("http://koeln.pennergame.de/stock/newplunder/execboost/?pid=70"); window.open("javascript:unarmPlunder(0)"); window.open("Seite3.html"); window.open("Seite4.html"); } <a href="javascript:abrüsten()">Jetzt abrüsten</a>
Das sollte ja nach meinem Verständniss in 4 neuen Fenstern/Tabs die Links öffnen wenn ich auf Jetzt abrüsten klicke, macht es aber nicht.
Warum? Es gibt keine englischen Umlaute (ä,ö,ü).
So wirds eher klappen..
function abruesten(){ window.open("http://koeln.pennergame.de/stock/newplunder/execboost/?pid=70"); window.open("javascript:unarmPlunder(0)"); window.open("http://de.selfhtml.org/javascript/objekte/window.htm#open"); window.open("http://www.google.de/#hl=de&q=javascript+window.open()"); } <a href="javascript:abruesten()">Jetzt abrüsten</a>
..wobei "javascript:unarmPlunder(0)" nur ein leeres Fenster öffnen wird und dort nichts ausführen kann. -
menschle schrieb:
wobei "javascript:unarmPlunder(0)" nur ein leeres Fenster öffnen wird und dort nichts ausführen kann.
Das scheint wohl generell mein Problem zu sein, ich habe die Funktion zwar im Script, kann Sie aber nur laden wenn ich auf der dazu passenden Seite im Spiel bin. Ich werde den
Link jetzt mal weg lassen und das Ganze zumindest für die verbleibenden Links zu machen.window.open("javascript:unarmPlunder(0)");
Hab die Umlaute mal ausgebessert das ärgert mich nen bissl das ich da nicht dran gedacht habe, Danke!
Hilft aber leider nix.
Wenn ich die Link ganz "normal" Aufrufe gehts es super
<a style="cursor: help;" onClick="window.open(\'http://'+stadt_homebase+'.pennergame.de/stock/newplunder/execboost/?pid=70\')">G-Bier</a>
In der Funktion is dann wieder flaute, beim anklciken passiert nichts.
function abruesten(){ window.open("http://koeln.pennergame.de/stock/newplunder/execboost/?pid=70"); window.open("http://de.selfhtml.org/javascript/objekte/window.htm#open"); window.open("http://www.google.de/#hl=de&q=javascript+window.open()"); } <a href="javascript:abruesten()">Jetzt abrüsten</a>
Danke für die beiden Links, die schau ich mir jetzt mal noch an. -
aff3m1tw4ff3 schrieb:
^^ Muss natürlich getrennt voneinander sein.
In der Funktion is dann wieder flaute, beim anklciken passiert nichts.
function abruesten(){ window.open("http://koeln.pennergame.de/stock/newplunder/execboost/?pid=70"); window.open("http://de.selfhtml.org/javascript/objekte/window.htm#open"); window.open("http://www.google.de/#hl=de&q=javascript+window.open()"); } <a href="javascript:abruesten()">Jetzt abrüsten</a>
Bei mir klappts.
<script language="JavaScript"> function abruesten(){ window.open("http://koeln.pennergame.de/stock/newplunder/execboost/?pid=70"); window.open("http://de.selfhtml.org/javascript/objekte/window.htm#open"); window.open("http://www.google.de/#hl=de&q=javascript+window.open()"); } </script> <a href="javascript:abruesten()">Jetzt abrüsten</a>
-
Nu hab ich es auch mal Testweise auf einer anderen Seite probiert, "misst es geht".
Da stellt sich jetzt also die Frage warum es im GM-Script nicht geht.
Muss ich denn Funktionen in Greasmonkey irgendwie extra deklarieren?
Weil es ja in einer Sandbox arbeitet( nu weiß ich auch was hackyourlife meinte )
-
aff3m1tw4ff3 schrieb:
Mit Buttons gehts, versuche mal folgendes Userscript:
Nu hab ich es auch mal Testweise auf einer anderen Seite probiert, "misst es geht".
Da stellt sich jetzt also die Frage warum es im GM-Script nicht geht.
Muss ich denn Funktionen in Greasmonkey irgendwie extra deklarieren?
// ==UserScript== // @name abruesten // @author Menschle // @namespace human007 // @description Legt Sachen ab / ruft Seiten auf // @include http://*pennergame.de/* // ==/UserScript== document.body.innerHTML+='<div style="position:absolute;top:0px;left:0px;width:800px;height:20px;z-index:1000;background-color:#fff;color:#000;"><input type="button" value="Plunder ablegen" onclick="if(this.unarmPlunder){unarmPlunder(0)};"><input type="button" value="Seiten aufrufen" onclick="window.open(\'http://koeln.pennergame.de/stock/newplunder/execboost/?pid=70\');window.open(\'http://www.google.de/#hl=de&q=javascript+window.open()\');window.open(\'http://de.selfhtml.org/javascript/objekte/window.htm#open\');"></div>';
^^ Das legt ein Menu über die Seiten. -
Ok, mal wieder was gelernt!
Ich kann also einfach in das onclick Event mehrere Anweisungen setzen.
So gehts dann , danke Dir.
Ist zwar nicht die schönste Lösung aber ein erster Ansatz.
Ich vermute mal der "Saubere" Weg führt dann über den AJAX-Request wie hackyourlife sagte.
Werde das jetzt mal so nutzen wie es über das onclick Event möglich ist und mich die Tage weiter mit
dem Thema beschäftigen. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage