Oder onClick='fun

Wie man dem Title schon ansieht geht es um [und onClick=„func();“. Aber welche möglichkeit ist besser?](javascript:func)

keine antwort aber ein Link
http://www.wer-weiss-was.de/cgi-bin/forum/board.fpl?..

Wie man dem Title schon ansieht geht es um und onClick=„func();“. Aber welche
möglichkeit ist besser?

Keine Ahnung, was gefällt Dir denn besser? OnClick auf einem Link ist relativ unsinnig, da ein Link … eben ein Link ist. Von mir aus ist es eben Geschmacksache, bzw. wenn Du eine Aktion benötigst, welche vor dem Ausführen des Links durchgeführt wird (onClick tritt vor dem Verfolgen des Links ein) Wenn Dir Buttons besser gefallen, wirst Du mit kein großes Glück haben, und verwendest das OnClick-Ereignis des Inputs. Wenn der Link auf nem Bild liegt, hast du bei Verwendung von mit dem border des Bilds zu kämpfen, den du maximal abschalten oder anders stiliert festlegen kannst (bitte mit CSS), bei onClick hast Du das Problem nicht.

Gruß,
Rudy

Hi,

Wie man dem Title schon ansieht geht es um und onClick=„func();“. Aber welche
möglichkeit ist besser?

eine javascript:-URL im href-Attribut eines Links kann höchstens dann Sinn machen, wenn der Link mit JavaScript herausgeschrieben wurde.

Keine Ahnung, was gefällt Dir denn besser? OnClick auf einem
Link ist relativ unsinnig, da ein Link … eben ein Link ist.

Du hast soeben das Gegenteil Deiner Behauptung begründet.

Von mir aus ist es eben Geschmacksache,

Keinesfalls. Du scheinst den schwerwiegenden Fehler zu begehen, JavaScript als obligatorisch anzusehen.

Wenn Dir Buttons besser gefallen,

Formularbuttons und Links sind *keine* gleichwertigen Elemente. Es ist Unsinn, sie als austauschbar darzustellen.

Cheatah

Hi,

Wie man dem Title schon ansieht geht es um und onClick=„func();“. Aber welche
möglichkeit ist besser?

eine javascript:-URL im href-Attribut eines Links kann
höchstens dann Sinn machen, wenn der Link mit JavaScript
herausgeschrieben wurde.

Warum denn das? Etwa weil Du nur dadurch sichergehen kannst, dass JS aktiviert ist? So wie ich das verstanden habe, will er doch beim onClick-Ereignis eine JS-Funktion aufrufen. Allerdings ohne Angabe, bei welchem Element er das machen will, und was die Funktion tut. Deshalb bin ich auch auf mehrere eingegangen. Was das dann damit zu tun haben soll, ob JS den Link rausschreibt, verstehe ich nicht ganz.

Keine Ahnung, was gefällt Dir denn besser? OnClick auf einem
Link ist relativ unsinnig, da ein Link … eben ein Link ist.

Du hast soeben das Gegenteil Deiner Behauptung begründet.

Er hat nicht erwähnt, was seine Funktion tun will. Wenn die URL gewechselt werden soll, á la window.location.href=…, ist es doch unsinnig. Wenn eine Meldung erscheinen soll, bevor der Link verfolgt wird, so wie „Sie sind im Begriff, die Seite zu verlassen…“ kann es durchaus Sinn machen.

Von mir aus ist es eben Geschmacksache,

Keinesfalls. Du scheinst den schwerwiegenden Fehler zu
begehen, JavaScript als obligatorisch anzusehen.

Ich weiß, dass man JS deaktivieren kann. Wenn er aber davon ausginge, Javascript könnte auch deaktiviert sein, warum sollte er dann eine JS-Funktion aufrufen wollen? Er wird wohl darauf hinweisen, dass es für das korrekte Ausführen seiner Seite JS notwendig ist, sonst ist doch die ganze Frage hinfällig.

Wenn Dir Buttons besser gefallen,

Formularbuttons und Links sind *keine* gleichwertigen
Elemente. Es ist Unsinn, sie als austauschbar darzustellen.

Damit hast Du recht. Es gibt eben das onClick-Ereignis auch auf dem Button, ein Button kann als Link über eine JS-Funktion „missbraucht“ werden (natürlich wenn JS aktiviert ist…). Wie gesagt, wer weiß schon, was seine JS-Funktion macht, und auf welchem Element er das anwenden will? Dass bei Buttons nicht funktioniert, ist ja bekannt - die Möglichkeit gibts aber, warum dann vorenthalten?

Gruß,
Rudy

Hi,

eine javascript:-URL im href-Attribut eines Links kann
höchstens dann Sinn machen, wenn der Link mit JavaScript
herausgeschrieben wurde.

Warum denn das? Etwa weil Du nur dadurch sichergehen kannst,
dass JS aktiviert ist?

fast. Nur so kannst Du sicher stellen, dass der User keinen Link bekommt, auf dem er sich zu Tode klicken kann, ohne dass was passiert.

So wie ich das verstanden habe, will er
doch beim onClick-Ereignis eine JS-Funktion aufrufen.

Ja, und das href-Attribut enthält die URL der Seite, die ein JavaScript-freies Äquivalent zu dieser Funktion darstellt. Ist derartiges nicht möglich, wäre es hanebüchen, den Link bei deaktiviertem JavaScript anzubieten.

Keine Ahnung, was gefällt Dir denn besser? OnClick auf einem
Link ist relativ unsinnig, da ein Link … eben ein Link ist.

Du hast soeben das Gegenteil Deiner Behauptung begründet.

Er hat nicht erwähnt, was seine Funktion tun will.

Das ist hierbei egal. Die Funktionalität eines Links hat *nichts* mit JavaScript zu tun. Wenn ein Link … eben ein Link ist, sind JavaScript-Funktionen lediglich eine Alternative, die immer nur zusätzlich sein kann, also im onclick-Eventhandler zu stehen hat.

Ich weiß, dass man JS deaktivieren kann. Wenn er aber davon
ausginge, Javascript könnte auch deaktiviert sein, warum
sollte er dann eine JS-Funktion aufrufen wollen?

Du hast selbst mehrmals erwähnt, dass der OP nicht gesagt hat, was er eigentlich machen möchte. Zudem hast Du ein Beispiel genannt, wann die Verwendung des onclick-Attributs sinnvoll ist. Nun stellst Du die Sinnhaftigkeit von JavaScript selbst in Frage; denn sofern Du nicht zufällig jeden einzelnen Verwendung findenden Browser selbst konfiguriert hast, musst Du *immer* davon ausgehen, dass JavaScript deaktiviert ist.

Er wird wohl
darauf hinweisen, dass es für das korrekte Ausführen seiner
Seite JS notwendig ist,

Ich hoffe, er wird nicht so offen kundtun, dass er kläglich versagt hat, sondern statt dessen JavaScript sinnvoll einsetzen. Also so, dass alles auch ohne es funktioniert.

sonst ist doch die ganze Frage hinfällig.

Nein.

Wie gesagt, wer weiß schon, was seine JS-Funktion macht, und auf
welchem Element er das anwenden will?

Offenbar auf einem Link, also auf etwas, das der Anforderung einer definierten Ressource dient. Zumindest hat er danach gefragt :smile:

Cheatah

Hi,

eine javascript:-URL im href-Attribut eines Links kann
höchstens dann Sinn machen, wenn der Link mit JavaScript
herausgeschrieben wurde.

Warum denn das? Etwa weil Du nur dadurch sichergehen kannst,
dass JS aktiviert ist?

fast. Nur so kannst Du sicher stellen, dass der User keinen
Link bekommt, auf dem er sich zu Tode klicken kann, ohne dass
was passiert.

Ist doch dasselbe, meine Güte.

So wie ich das verstanden habe, will er
doch beim onClick-Ereignis eine JS-Funktion aufrufen.

Ja, und das href-Attribut enthält die URL der Seite, die ein
JavaScript-freies Äquivalent zu dieser Funktion darstellt. Ist
derartiges nicht möglich, wäre es hanebüchen, den Link bei
deaktiviertem JavaScript anzubieten.

Also doch nicht ‚fast‘, sondern ‚ja‘.

Keine Ahnung, was gefällt Dir denn besser? OnClick auf einem
Link ist relativ unsinnig, da ein Link … eben ein Link ist.

Du hast soeben das Gegenteil Deiner Behauptung begründet.

Er hat nicht erwähnt, was seine Funktion tun will.

Das ist hierbei egal. Die Funktionalität eines Links hat
*nichts* mit JavaScript zu tun.

ACK. Der Verweis auf eine andere Seite nicht. Der Link auf eine JS-Funktion schon. Was macht wohl '[ bei deaktiviertem JS? Ich komme mir vor, als reden wir im Kreis, und dabei aneinander vorbei, was ich schade finde, da es dem Fragesteller wenig nützt. Der scheint von unserer Diskussion mittlererweile schon verschreckt, jedenfalls schreibt er nicht mehr. Richte Deine Worte mit dem allesklärenden Fazit, was ‚besser‘ ist, was ‚schlechter‘ ist, wie er ‚es‘ machen soll, an ihn und lass uns daraus lernen. Ich versuche das anhand Deiner zerfleddernden Logik zu ergründen.

Wenn ein Link … eben ein
Link ist, sind JavaScript-Funktionen lediglich eine
Alternative, die immer nur zusätzlich sein kann, also im
onclick-Eventhandler zu stehen hat.

Schön, und was ist nun ‚besser‘?

Ich weiß, dass man JS deaktivieren kann. Wenn er aber davon
ausginge, Javascript könnte auch deaktiviert sein, warum
sollte er dann eine JS-Funktion aufrufen wollen?

Du hast selbst mehrmals erwähnt, dass der OP nicht gesagt hat,
was er eigentlich machen möchte. Zudem hast Du ein Beispiel
genannt, wann die Verwendung des onclick-Attributs sinnvoll
ist. Nun stellst Du die Sinnhaftigkeit von JavaScript selbst
in Frage; denn sofern Du nicht zufällig jeden einzelnen
Verwendung findenden Browser selbst konfiguriert hast, musst
Du *immer* davon ausgehen, dass JavaScript deaktiviert ist.

Ich mag JS und stelle es nicht in Frage. Wann bitte habe ich das getan?

Aber gut, bevor Du die Teile meines Postings wieder wild durcheinanderwirfst und mich in der Luft zerreißt (was mich übrigens amüsiert :smile:, liefern wir ihm also den Fazit: Verwende nie JS, weil es ja deaktiviert sein könnte. Rufe die JS-Funktion nur über Er wird wohldarauf hinweisen, dass es für das korrek…](javascript:func())

Hi,

Warum denn das? Etwa weil Du nur dadurch sichergehen kannst,
dass JS aktiviert ist?

fast. Nur so kannst Du sicher stellen, dass der User keinen
Link bekommt, auf dem er sich zu Tode klicken kann, ohne dass
was passiert.

Ist doch dasselbe, meine Güte.

nein, nur fast. Deshalb schrieb ich das ja auch.

Also doch nicht ‚fast‘, sondern ‚ja‘.

Nicht, was Du ohne JavaScript tun kannst, kann sicher stellen, dass JavaScript aktiviert ist.

Die Funktionalität eines Links hat
*nichts* mit JavaScript zu tun.

ACK. Der Verweis auf eine andere Seite nicht. Der Link auf
eine JS-Funktion schon. Was macht wohl ’ bei deaktiviertem JS?

Nichts, von der Fokussierung des Linkelements abgesehen. Somit ist es dann kein Link mehr, sondern irgend ein Element. Warum sollte man es also als Link auszeichnen?

Ich komme
mir vor, als reden wir im Kreis, und dabei aneinander vorbei,
was ich schade finde, da es dem Fragesteller wenig nützt.

Es könnte zumindest Dir nützen, weil Du offenbar immer noch der Meinung bist, ein bei deaktivertem JavaScript verfügbarer Link, der auf eine javascript:-URL zeigt, könne gerechtfertigt werden. Dem ist *nicht* so.

Der
scheint von unserer Diskussion mittlererweile schon
verschreckt, jedenfalls schreibt er nicht mehr.

Vielleicht verfolgt er ja den Diskurs, oder er ist einfach im Moment weg.

Richte Deine
Worte mit dem allesklärenden Fazit, was ‚besser‘ ist, was
‚schlechter‘ ist, wie er ‚es‘ machen soll, an ihn und lass uns
daraus lernen.

Wieso sollte ich das noch einmal machen? Aus meinem ersten Posting konntest Du bereits all dies entnehmen.

Wenn ein Link … eben ein
Link ist, sind JavaScript-Funktionen lediglich eine
Alternative, die immer nur zusätzlich sein kann, also im
onclick-Eventhandler zu stehen hat.

Schön, und was ist nun ‚besser‘?

Äh. Möchtest Du den von Dir zitierten Satz vielleicht noch mal lesen? Oder was meinst Du mit Deiner Frage?

Ich weiß, dass man JS deaktivieren kann. Wenn er aber davon
ausginge, Javascript könnte auch deaktiviert sein, warum
sollte er dann eine JS-Funktion aufrufen wollen?

[…] Nun stellst Du die Sinnhaftigkeit von JavaScript selbst
in Frage; denn sofern Du nicht zufällig jeden einzelnen
Verwendung findenden Browser selbst konfiguriert hast, musst
Du *immer* davon ausgehen, dass JavaScript deaktiviert ist.

Ich mag JS und stelle es nicht in Frage. Wann bitte habe ich
das getan?

Du fragst, warum man JavaScript verwenden sollte, wenn auf es etwas zutrifft, mit dem grundsätzlich gerechnet werden muss. Damit hast Du angegeben, JavaScript solle im Internet nicht eingesetzt werden.

Aber gut, bevor Du die Teile meines Postings wieder wild
durcheinanderwirfst und mich in der Luft zerreißt (was mich
übrigens amüsiert :smile:, liefern wir ihm also den Fazit:
Verwende nie JS, weil es ja deaktiviert sein könnte.

Dies war Deine Behauptung. Ich bin anderer Meinung.

Rufe die JS-Funktion nur über Ach ja… versuche auf jeden Fall, nicht kläglich zu…

Zumindest dies hast Du verstanden.

Cheatah