Javascript Zwang bei HTML5?


  • Mod

    Javascriptzwang schrieb:

    Shade Of Mine schrieb:

    Du hast ein komplett falches Verständnis wie HTML funktioniert.

    Schön, Danke für die Unterstellung, dann erkläre mal wie HTML funktioniert, vielleicht kann ich etwas dazulernen.

    Das mit den Form Tags erkläre dann bitte ebenfalls.

    Du willst nicht lernen, das ist offensichtlich.

    Aber bitte.
    HTML5 wird konstant weiter entwickelt und die Browser werden konstant besser. Es kommen konstant neue Features hinzu. Wenn du nun ein bleeding edge feature verwenden willst, dann setze einfach einen bleeding edge Browser voraus. Fertig. Keine Hexerei. Wenn der User einen alten Browser hat, dann funktioniert die Seite eben nicht.

    Wenn man das nicht will, gibt es ein paar Ansätze. zB sind viele HTML5 features sowieso abwärtskompatibel. zB bei einer Form kann man client side validation machen. Wenn der Browser es kann super, wenn nicht, dann validiert eh der Server sowieso auch. Also null Aufwand um hier alte Browser zu unterstützen. User mit einem alten Browser hab gewisse Features nicht, können die Seite aber ohne Probleme benutzen.

    Wenn man nun ein Feature unbedingt braucht aber damit rechnet dass einige Leute zu alte Browser dafür verwenden, dann nimmt man einfach ein Polyfill. Das ist eine JS Datei die die Funktionalität für ältere Browser bereit stellt. Bei neuen tut sie nichts.

    Und dann gibt es noch Feature Detection mit der man erkennen kann ob der Browser gewisse Features unterstützt (das kann man zB mit Polyfills kombinieren wenn man will). So kann man zB eine high end variante für moderne Browser und eine altbackene Seite für alte Browser erstellen und dynamisch dem Besucher die passende Seite schicken.

    Aber das sind alles Spezialfälle. Die HTML5 macher sind cleverer als du. Die haben sich schon etwas dabei gedacht. Du kannst eine moderne Seite ohne Probleme auch in älteren Browsern ansehen ohne dass es Probleme macht. Wirklich kompliziert wird es nur wenn du dir einbildest Steinzeit Browser wie den IE 6 oder so unterstützen zu müssen. Aber wir haben aktuell zB FireFox 27 - der ist der aktuelle FireFox. Aber mit Ausnahme von Spezialfällen wirst du keinen Unterschied zu einem FireFox 20 merken.

    Sofern man also halbwegs aktuelle Browser targetet, ist das alles kein Problem.

    JavaScript zu verwenden ist dann natürlich aber aus anderen Gründen sehr praktisch.

    Und einfach nur so fyi: JavaScript zu deaktivieren ist dumm.



  • http://www.w3schools.com/html/html5_intro.asp schrieb:

    Some rules for HTML5 were established:

    • New features should be based on HTML, CSS, DOM, and JavaScript
    • The need for external plugins (like Flash) should be reduced
    • Error handling should be easier than in previous versions
    • Scripting has to be replaced by more markup
    • HTML5 should be device-independent
    • The development process should be visible to the public

    Wogegen haben Sie den verstoßen?



  • Shade Of Mine schrieb:

    Wenn du nun ein bleeding edge feature verwenden willst, dann setze einfach einen bleeding edge Browser voraus. Fertig. Keine Hexerei. Wenn der User einen alten Browser hat, dann funktioniert die Seite eben nicht.

    Aha, so einfach machst du es dir.

    Wenn man das nicht will, gibt es ein paar Ansätze. zB sind viele HTML5 features sowieso abwärtskompatibel. zB bei einer Form kann man client side validation machen.

    Also nimmst du Javascript um das zu validieren, sehr schön. Das wiedergibt genau das, was ich geschrieben habe.

    Wenn man nun ein Feature unbedingt braucht aber damit rechnet dass einige Leute zu alte Browser dafür verwenden, dann nimmt man einfach ein Polyfill. Das ist eine JS Datei die die Funktionalität für ältere Browser bereit stellt. Bei neuen tut sie nichts.

    Also doch JS.

    Aber das sind alles Spezialfälle. Die HTML5 macher sind cleverer als du. Die haben sich schon etwas dabei gedacht. Du kannst eine moderne Seite ohne Probleme auch in älteren Browsern ansehen ohne dass es Probleme macht.

    Gut, dann lass uns mal das range Form Tag in die Seite einbauen und sehen, wie gut ein alter Browser damit klar kommt, so ganz ohne JS.

    Wirklich kompliziert wird es nur wenn du dir einbildest Steinzeit Browser wie den IE 6 oder so unterstützen zu müssen.

    Siehst du, also doch JS.
    Aber der IE ist ja noch nicht mal das Problem, denkt man darüber nach das WinXP bald sowieso eingestellt wird.
    Sondern die Probleme existieren bei alten Embedded Geräten die einen Browser an Bord haben. Z.B. ein altes Tablet, eine alte Konsole oder ein altes Smartphone.

    Und einfach nur so fyi: JavaScript zu deaktivieren ist dumm.

    Ist es nicht, weil jedes unnötige Script das läuft, CPU Resourcen verheizt und die Maschine langsam macht.
    Dies gilt umso mehr, wenn der Javascript Code grottig geschrieben wurde.


  • Mod

    Siehst du, du willst nichts lernen - du willst nur streiten. Merkt man an der formulierung.

    Wenn du eine ernsthafte Frage hast, dann stelle sie.



  • Shade Of Mine schrieb:

    Siehst du, du willst nichts lernen - du willst nur streiten. Merkt man an der formulierung.

    Wenn du eine ernsthafte Frage hast, dann stelle sie.

    Was erwartest du?
    Du erzählst mir hier vom Pferd dass man kein JS brauchen würde und erwähnst gleichzeitig, das man es ja doch braucht.

    Alle deine Lösungsvorschläge, mit Ausnahme der, alte Browser zu ignorieren, erfordern Javascript wenn die Webseite auch für alte Browser geeignet sein soll.



  • Ich möchte hier Shade Of Mine unterstützen. Es ist so einfach wie es ist. Willst Du neue Features verwenden, muss der Client diese auch kennen. Wenn Du Clients unterstützen möchtest, die diese Features nicht kennen, dann darfst Du sie einfach nicht verwenden. Das ist doch wirklich ganz einfach.


  • Mod

    tntnet schrieb:

    Ich möchte hier Shade Of Mine unterstützen. Es ist so einfach wie es ist. Willst Du neue Features verwenden, muss der Client diese auch kennen. Wenn Du Clients unterstützen möchtest, die diese Features nicht kennen, dann darfst Du sie einfach nicht verwenden. Das ist doch wirklich ganz einfach.

    bzw. man kann diese Features nachrüsten - und das ist dann eben JavaScript.

    Aber diese Bleeding Edge Features sind idR eh nicht notwendig und die meisten Features sind abwärtskompatibel. zB range input - das wird, wenn der Browser es nicht kann als Textfeld angezeigt. Der User kann dann die gewünschte Zahl halt händisch eingeben anstatt einen coolen Slider zu bekommen.

    Und wenn man unbedingt einen Slider haben will und die Zielbrowser das nicht können, naja, dann muss man halt etwas programmieren.



  • Vielleicht will uns der original Poster mal verraten, wie er etwas erweitern möchte, ohne es zu verändern.



  • tntnet schrieb:

    Vielleicht will uns der original Poster mal verraten, wie er etwas erweitern möchte, ohne es zu verändern.

    Es geht nicht um das erweitern ohne es zu verändern, sondern um die Tatsache, dass man für diese ganzen Checks Javascript benötigt.

    Damit gibt es bald faktisch keine Seite mehr, die ohne JS auskommt.

    Bessere wäre es gewesen, HTML 5 wie früher als vollwertige Version anzubieten, bei der die Browser, die HTML 5 konform sein wollen, einfach alle Features unterstützen müssen, um HTML 5 konform zu sein.

    Wäre es so, dann könnte man aus HTML 5 alles nutzen was da ist, ohne auch jemals das mit JS zu prüfen.

    Den alten Browsern ist damit zwar nicht geholen, aber für die kann man dann ja HTML 4 verwenden.


  • Mod

    Javascriptzwang schrieb:

    Es geht nicht um das erweitern ohne es zu verändern, sondern um die Tatsache, dass man für diese ganzen Checks Javascript benötigt.

    Ja, wenn du die Checks machen willst dann brauchst du JS dazu. Aber wozu willst du diese Checks machen? Das ist unnötig.

    Du kannst nicht sagen du willst Bleeding Edge Technologie auf alten Browsern verwenden ohne JS. Das geht nicht. Wenn du Bleeding Edge Features willst, dann verwende Bleeding Edge Browser. Du brauchst da kein JS. Und nahezu alle HTML5 Features sind abwärtskompatibel, so dass wenn der alte Browser das Feature nicht kennt, die Seite dennoch verwendbar ist.

    Was du sagst ist einfach nur Dumm.

    Bessere wäre es gewesen, HTML 5 wie früher als vollwertige Version anzubieten, bei der die Browser, die HTML 5 konform sein wollen, einfach alle Features unterstützen müssen, um HTML 5 konform zu sein.

    Das ist eine absolut Dumme Idee. Das wäre richtig schlecht für das Internet. Wenn du nachfragen willst warum das so ist, beantworte ich es dir gerne.

    Den alten Browsern ist damit zwar nicht geholen, aber für die kann man dann ja HTML 4 verwenden.

    lol.
    Logik und so, gell?

    Du kannst mit HTML5 einfach alle Features verwenden die die Browser können. Die meisten Features sind abwärtskompatibel so dass es nichts macht, wenn der Browser das Feature nicht kann. Du kannst immer noch HTML4 verwenden (aber Achtung, auch nicht alle HTML4 Features werden von allen Browsern unterstützt).

    Mit JS hast du lediglich die Möglichkeit Features auf Browsern zu verwenden die dieses Feature eigentlich nicht können. Das ist ein Positiverpunkt, kein Negativer. Du kannst mit JS Features auf alten Browsern nachrüsten. Du musst das aber nicht tun.

    PS:
    Ich habe kein Problem damit wenn man etwas nicht weiß und nachfragt - aber du stellst ja keine Frage sondern beschwerst dich darüber wie das Internet funktioniert auf einer wahnsinnigen lächerlichen Art.

    PPS:
    Und JavaScript ist ein Segen. Es zu deaktivieren ist Dumm. Wenn du wissen willst warum das Dumm ist, kann ich es dir auch gerne erklären.



  • Shade Of Mine schrieb:

    Das ist eine absolut Dumme Idee. Das wäre richtig schlecht für das Internet. Wenn du nachfragen willst warum das so ist, beantworte ich es dir gerne.

    ..
    PPS:
    Und JavaScript ist ein Segen. Es zu deaktivieren ist Dumm. Wenn du wissen willst warum das Dumm ist, kann ich es dir auch gerne erklären.

    Okay, das hätte ich jetzt gerne erläutert.

    JS verbraucht unnötig Ressourcen, dies hatte ich schon erwähnt.
    Das man mit JS die Seite aufpeppen kann und manche Dinge schon auf dem Client berechnen lassen kann um den Server zu entlasten, dies ist mir durchaus bekannt,
    aber das ist kein Grund, JS generell für jeden Fliegenschiss einzusetzen und vom Nutzer zu fordern, dass er es aktiviert, nur damit die Seite ordentlich funktioniert.
    Neben dem Performanceproblem kann JS nämlich auch eine Sicherheitslücke darstellen und in der Vergangenheit war das auch schon oft der Fall.



  • Pack deinen Rechner/Smartphone/Tablet/Whatever wieder ein und schicke ihn, mit der Aufschrift "Ich bin zu blöd für neue IT", wieder zurück. Wenn du neue Technologie nicht nutzen willst, dann lass es doch einfach. Javascript ist einer DER Bausteine der aktuellen und zukünftigen Webtechnologie. Wenn dir das Web nicht liegt, dann lass es halt.



  • Shade, ich warte noch auf eine Antwort, nur weil ein dummer Troll wie JS4Future hier antwortet, bedeutet das nicht, dass ich keine Antwort von dir mehr möchte.


  • Mod

    Javascriptzwang schrieb:

    Shade, ich warte noch auf eine Antwort, nur weil ein dummer Troll wie JS4Future hier antwortet, bedeutet das nicht, dass ich keine Antwort von dir mehr möchte.

    Die Antwort von JS4Future ist fachlich vollkommen Korrekt.

    Aber JS ist in einer modernen Umgebung nicht der Stromverschwender. Exzessiver falscher Einsatz einer Technik kann aber natürlich immer zu Problemen führen.

    Aber JS Engine sind hochoptimiert und JS Code ist recht trivial zu parsen. Das HTML parsen dagegen frisst sehr relevante Zeit oder das Laden der Bilder und sie im RAM zu halten frisst stark Resourcen. Das wirkliche Strom Problem bekommst du aber sowieso durch UMTS/WLAN, das kostet wirklich Strom.

    Und JS läuft in einer Sandbox und hat damit deutlich weniger Sicherheitsprobleme als zB Bilddarstellung. Aber wozu schreibe ich das hier. JS4Future hat es deutlich besser formuliert.

    Wenn du eine ernsthafte Frage hast, beantworte ich sie dir gerne.



  • JS4Future ist ein Depp und hat gar nichts beantwortet.
    Und wer weiß schon, ob du hier als unreg postest.



  • Dein Versprechen die Fragen zu beantworten hast du leider auch nicht eingehalten.


  • Mod

    Du kannst gerne eine vernünftige Frage stellen.

    Du hast genau 3 mal ein Fragezeichen in diesem Thread verwendet und diese alle auf der 1. Seite.

    Wenn du eine Frage hast, dann stelle sie. Ich habe dir zB das mit range input erklärt obwohl du garnicht danach gefragt hast (Fragen enden mit einem Fragezeichen, daher ja auch der Name "Fragezeichen") - dein Problem scheint also vielleicht in 1. Linie eher in der Kommunikation zu liegen als mit einer speziellen Technologie.

    Also biete ich es dir noch mal:
    Wenn du eine Frage hast, so stelle sie einfach, ich werde sie dir beantworten.

    Du könntest zB Fragen wieso JavaScript auf den Batterieverbrauch wenig Einfluss hat. Das wäre zB ein interessantes Thema.



  • Ich zitiere meine Frage für dich noch einmal:

    Das ist eine absolut Dumme Idee. Das wäre richtig schlecht für das Internet. Wenn du nachfragen willst warum das so ist, beantworte ich es dir gerne.

    ..
    PPS:
    Und JavaScript ist ein Segen. Es zu deaktivieren ist Dumm. Wenn du wissen willst warum das Dumm ist, kann ich es dir auch gerne erklären.

    Okay, das hätte ich jetzt gerne erläutert.

    Ich habe dir die entsprechenden Stellen sogar fett hervorgehoben.

    Und das hier:

    Exzessiver falscher Einsatz einer Technik kann aber natürlich immer zu Problemen führen.

    ist ein Problem, das du unter den Teppich kehren möchtest. Ich weiß aber dass da draußen die Webseiten in der Regel nicht von erfahrenen Programmierern erstellt werden, sondern von umgeschulten Webbastlern. Entsprechend Grütze sind dann auch die JS Scripte, wenn man die da ran läßt.

    Seit dem ich z.B. noSript nutze, ist die Resourcen- und Rechenzeitbelastung über meinen aktuellen Browser mit ca. 6*[5..7] geöffneten Webseiten drastisch gesunken, daher habe ich Praxiserfahrung wie sehr JS den Rechner belasten kann.
    Und da geht es nicht mal in erster Linie um den Stromverbrauch, sondern eben auch um den Rechner ansich, der bei vielen JS Scripten nicht mehr so performant reagiert, wie man es gerne hätte.
    Du darfst auch nicht von dir alleine ausgehen, der vielleicht nen 8 Kerner hat.

    Und die JS Engines im Browser werden zwar besser, aber das nützt nichts, wenn die Scripte selbst Grütze sind.
    Den menschlichen Faktor, der billigen Grützenprogrammierer wirst du nämlich damit nicht kompensieren können.
    Ich wette sogar stark, dass unser JS4Future so ein Grützenprogrammierer ist, denn der scheint Javascript wie behämmert für alles mögliche einzusetzen. Wäre er aber ein guter Programmierer, dann hätte er einen ordentlichen Job bei der er in einer anderen Programmiersprache programmieren muss.



  • @Javascriptzwang:

    Ich kann deine Abneigung gegen JS verstehen (habe es selbst auch nicht aktiviert, brauche den Spielkram nicht), aber Du hast IMHO ein Logikproblem:

    a) Wenn ein Browser ein Feature nicht unterstützt und Du die Feature-Detection sein lässt, dann funktioniert das Feature einfach nicht.
    b) Wenn ein Browser ein Feature nicht unterstützt und Du per JS entdeckst, dass es nicht unterstützt wird, hast Du 2 Möglichkeiten:
    b1) Du baust es per Javascript nach. Dann *musst* Du aber eh' JS wegen des Nachbauens verwenden.
    b2) Du baust es nicht nach und nutzt das Feature nicht. Dann hast Du aber das selbe Ergebnis, wie a).

    Es bleibt nur noch der Umstand, dass das Detection JS unsinnigerweise auch auf Browsern ausgeführt wird, die die Features unterstützen. Wäre mir aber egal, da
    a) - Leute, die JS aktiviert lassen sozusagen per "opt-In" zustimmen JS ausführen zu wollen. Weiterhin ist der Detection-Teil sicherlich ziemlich klein, so dass der von der Performance her nicht ins Gewicht fällt
    b) - bei Leuten, die JS deaktiviert haben und deren Browser die gewünschten Features unterstützt, trotzdem alles funktioniert


  • Mod

    Javascriptzwang schrieb:

    Ich zitiere meine Frage für dich noch einmal:

    Das ist eine absolut Dumme Idee. Das wäre richtig schlecht für das Internet. Wenn du nachfragen willst warum das so ist, beantworte ich es dir gerne.

    ..
    PPS:
    Und JavaScript ist ein Segen. Es zu deaktivieren ist Dumm. Wenn du wissen willst warum das Dumm ist, kann ich es dir auch gerne erklären.

    Okay, das hätte ich jetzt gerne erläutert.

    Ich habe dir die entsprechenden Stellen sogar fett hervorgehoben.

    Eine Frage hat ein Fragezeichen, Grundschule junge, Grundschule.

    Weiters hast du kein Anrecht auf eine Antwort. Du bist von meiner Gutmütigkeit abhängig ob ich dir Antworte - ein Recht auf Antwort gibt es nicht. Also überlege dir deinen Ton nochmal genau.

    Wenn HTML5 in Stein gemeißelt wäre, dann hätten wir das selbe Problem wie mit HTML4. Deshalb ist die konstante Weiterentwicklung genau das richtige.

    Und JS zu deaktivieren ist dumm weil es keinen Grund gibt es zu deaktivieren. Power Consumption, Sicherheitsrisiko etc. ist kein relevantes Problem.

    Und das hier:

    Exzessiver falscher Einsatz einer Technik kann aber natürlich immer zu Problemen führen.

    ist ein Problem, das du unter den Teppich kehren möchtest.

    Nein ist es nicht. Wenn jemand eine Technik misshandelt dann ist das nicht das Problem der Technik. Verwende die Technik einfach so wie vorgesehen und die Probleme sind weg.

    Seit dem ich z.B. noSript nutze, ist die Resourcen- und Rechenzeitbelastung über meinen aktuellen Browser mit ca. 6*[5..7] geöffneten Webseiten drastisch gesunken, daher habe ich Praxiserfahrung wie sehr JS den Rechner belasten kann.

    noscript blockt auf flash und eine Menge Features/Content der Seiten. Ergo testest du nicht korrekt. Was mich natürlich nicht wundert.

    Und da geht es nicht mal in erster Linie um den Stromverbrauch, sondern eben auch um den Rechner ansich, der bei vielen JS Scripten nicht mehr so performant reagiert, wie man es gerne hätte.

    Falsch.

    Du darfst auch nicht von dir alleine ausgehen, der vielleicht nen 8 Kerner hat.

    Ich stelle einfach mal die Behauptung auf mehr von der Thematik zu verstehen als du 😉

    Und die JS Engines im Browser werden zwar besser, aber das nützt nichts, wenn die Scripte selbst Grütze sind.

    Natürlich nützt das etwas.

    Den menschlichen Faktor, der billigen Grützenprogrammierer wirst du nämlich damit nicht kompensieren können.

    Das gilt aber nicht nur für JS sondern für alle Resourcen.

    Ich wette sogar stark, dass unser JS4Future so ein Grützenprogrammierer ist, denn der scheint Javascript wie behämmert für alles mögliche einzusetzen. Wäre er aber ein guter Programmierer, dann hätte er einen ordentlichen Job bei der er in einer anderen Programmiersprache programmieren muss.

    Im Gegensatz zu dir hat er zumindest ein wenig Ahnung vom Thema hier.
    Du stellst hier nur Behauptungen auf die einfach Dumm sind. Und ich verwende dieses Wort nicht leicht.

    zB JS Resourcen sind zB im Gegensatz zu CSS Resourcen oder Anzahl Requests irrelevant. Natürlich gibt es Leute die es schaffen mit JS relevante Rechenleistung zu produzieren, aber das geht mit jeder Technik. CSS ist zB enorm Resourcen intensiv oder überkomplizierte HTML Bäume kosten unmengen an RAM. Unoptimierte Bilder uU sogar GIFs fressen richtig fett Resourcen. etc.

    Du hast übrigens gezeigt dass du nur Trollen willst indem du das Thema verschoben hast und dein Ausgangsthema nicht mehr ansprichst. Anfängerfehler, wundert aber nicht.

    Also, wenn du etwas wissen willst, dann frag nett - dieser Post hier ist sonst mein letzter.


Anmelden zum Antworten