In index.php prüfen, ob javascript aktiviert

  • Hallo,

    ich habe es geschafft, ob gut oder nicht, meine Startseite auf aktiven javascript zu prüfen.

    Es funktioniert in FF wie gewollt, in chrome schon nicht so gut.


    index.php:


    <?php


    # hier steht der code meiner original index.php


    // ##M - Prüfen, ob Javascript aktiviert

    { ?>

    <h1><noscript><font color='#FF0000'><center>In Ihrem Browser ist JavaScript deaktiviert. Notwendige Features der Seite werden nicht funktionieren.</center></font></noscript></h1>

    <?php

    }

    // ##M ENDE - Prüfen, ob Javascript aktiviert ist


    ?>

    Den code habe ich mir zusammengesucht, da meine Programmierkenntnisse doch eher bescheiden sind.


    Jetzt zu meinem Problem. Der Text "In Ihrem Browser ist JavaScript deaktiviert. Notwendige Features der Seite werden nicht funktionieren." wird korrekt dargestellt, aber halt unten.

    Ich möchte den Text aber ganz oben auf meiner Startseite haben.

    Wie bekomme ich das hin.

    Ganz andere Ansätze sind gerne willkommen.

    Gruß

  • Danke Re:Later ;), von dort habe ich ja den code so hingebogen wie oben dargestellt,

    - in FF und chrome funktioniert es mit installiertem uMatrix nur, wenn "Verschleiere <noscript> Tags wenn Skripte der aktuellen Domain blockiert werden" angehakt ist. Warum denn das, ist keine Standardeinstellung wie ich weiß.

    - In Safari auf meinem smartphone mit deaktiviertem javascript funktioniert es!

    - In Microsoft Edge 44.19041.423.0 kann ich javascript gar nicht deaktivieren.


    Habs jetzt so gelöst:


    <h1><noscript><font color='#FF0000'><div style="position:fixed; margin-left: 0px; top: 0px;">In Ihrem Browser ist JavaScript deaktiviert. Notwendige Features der Seite werden nicht funktionieren.</div></font></noscript></h1>


    Einfach ein <div style="position:fixed; margin-left: 0px; top: 0px;">


    eingefügt, bietet sogar mehr als ich wollte, mit position:fixed bleibt der Hinweis auch beim scrollen immer an der Position.

  • Sicher nicht meinen...

    Ok :thumbup:, dann bist du halt nicht die Quelle, die hat sowieso nicht funktioniert.

    Erst meine Änderung hats gebracht.

    Und wer Noscript oder uMatrix einsetzt, braucht sich nicht wundern, er weiß ja was er tut.


    PHP
    $isRobot = JFactory::getApplication()->client->robot;
    if (!$isRobot)
    { ?>
    <script>jQuery("html").removeClass("jsIsNotActive");</script>
    <div id="noscriptdiv">
    In Ihrem Browser ist JavaScript deaktiviert. Ein paar Features der Seite werden nicht funktionieren.
    </div>
    <?php }

    Aber mich würde schon interessieren, wie so etwas immer funktionieren kann, bitte her damit, mit deinem code geht es jedenfalls nicht.

    Mein code oben funktioniert nur, wenn "Verschleiere <noscript> Tags wenn Skripte der aktuellen Domain blockiert werden" angehakt ist - leichter Mangel.