@ndre@s: Linkchecker für JavaScript-Links

Hallo Leute,

kennt jemand einen Linkchecker, der auch Javascript-Links mit abcheckt?

Ich hab da nämlich 'ne Seite, die hat ganze 3 oder 4 normale Links, alles andere ist Javascript.
Funktioniert auch alles prima, aber da die Site schon sehr umfangreich ist wollte ich mir das Leben etwas vereinfachen und nicht allesvon Hand nachlesen oder auf die Fehler-Mails der Nutzer warten.

Vielen Dank

@ndre@s

  1. Moin,

    kennt jemand einen Linkchecker, der auch Javascript-Links mit abcheckt?

    Du meinst sowas:

    <script type="text/javascript"><!--
      var protocol = 'http://';
      var domain   = 'www.teamone.de'
      var path     = '/selfaktuell/';
      function go (url) {
        top.location.href = url;
      }
    //--></script>
    ...
    <a href="javascript:go(protocol+domain+path)">...</a>
    <!-- disclaimer: ungetestet, aus den Fingern gesogen -->

    ?

    glaub ich kaum. (Ein gutes Argument gegen JS-Links ;)

    Viele Gruesse,

    n.d.p.

    1. Moin,

      kennt jemand einen Linkchecker, der auch Javascript-Links mit abcheckt?

      ...

      glaub ich kaum. (Ein gutes Argument gegen JS-Links ;)

      Und inwiefern hilft mir das jetzt weiter?
      Das mit dem gibts nicht, geht nicht kannste echt stecken lassen, weil - ich weiss dass du es besser weisst/kannst.

      Wenns da nix fertiges gibt, dann muss ich mir halt selbst was schreiben, aber dazu wäre eben etwas Hilfe auch sehr nett.

      Vielleicht gibts ja irgend wo etwas Perl-Code dazu, den man angepaßt weiterverwenden kann.
      (Ich glaube es läuft auf sowas wie 'nen Parser, der JS-Programme auflösen kann hinaus.)
      Vielleicht fällt Dir oder wem anders noch was nettes dazu ein.
      Bin jedenfalls dankbar für jeden Tip.

      gruß

      @ndre@s

      P.S.: Das Beispiel war gut aus den Fingern gesogen ;-)

      1. Moin,

        glaub ich kaum. (Ein gutes Argument gegen JS-Links ;)

        Und inwiefern hilft mir das jetzt weiter?
        Das mit dem gibts nicht, geht nicht kannste echt stecken lassen, weil - ich weiss dass du es besser weisst/kannst.

        tut mir leid, dich enttaeuschen zu muessen, aber *ich* kann sowas nicht. Mir fehlt einfach das noetige Know-How der dazugehoerigen KI-Komponente.

        Wenns da nix fertiges gibt, dann muss ich mir halt selbst was schreiben, aber dazu wäre eben etwas Hilfe auch sehr nett.

        jaaa...

        (Ich glaube es läuft auf sowas wie 'nen Parser, der JS-Programme auflösen kann hinaus.)

        hmm, ich sehe da eine Analogie zum "HALT"-Problem [1]. Das ist bewiesenermassen unloesbar.
        Sorry, ich sehe keinen allgemeingueltigen Weg, "JS-Links" zu parsen.

        Wenn du allerdings *nur* dem Checker bekannte Schemen der Linkerzeugung in deinen Seiten verwendest, reduziert sich dein Problem auf ein Parsing des HTML- und des Javascript-Codes (pure Stringvergleiche, beispielsweise [2]). Dein "Parser" muesste nur fuer ihn relevante Muster finden und die Linkerzeugung, die im Browser per JS passiert, nachbilden. Die so erzeugten Links kannst du etwa in eine HTML-Seite schreiben und von einem HTML-Linkchecker ueberpruefen lassen (oder es bleiben lassen und gleich selbst tun)

        Viele Gruesse,

        n.d.p.

        [1]
        HALT-Problem: ich finde leider gerade keinen passenden Link dazu, es handelt sich, um das Problem, mit einem Programm A herausfinden zu koennen, ob ein Programm B immer zu einem HALT-Zustand (also definiertes Programmende) kommt. Die Unmoeglichkeit ist mathematisch bewiesen.

        [2]
        einfaches Beispiel: http://www.ostseejazz.de. Dort wird die Navigation per selectboxen+JS [3] gesteuert, die allerdings *eindeutig* per Stringvergleich identifizierbar sind (ich brauche nur die URLs in den <option>s ueberpruefen - fertig).

        [3]
        es gibt selbstverstaendlich eine noscript-.pl-Variante und eine HTML-Sitemap mit allen Links drauf.
        die Ueberpruefung aus [2] ist allerdings dann schon nicht mehr 100% sicher, da ich mit programmtechnischen MItteln ([1] ;-)) nicht ueberpruefen kann, ob das auch tatsaechlich so funktioniert, wie vorgestellt. Das weiss ich nur durch Testen.

        so, langes Posting - HTH

        1. HALT-Problem: ich finde leider gerade keinen passenden Link dazu,
          es handelt sich, um das Problem, mit einem Programm A herausfinden
          zu koennen, ob ein Programm B immer zu einem HALT-Zustand (also
          definiertes Programmende) kommt.
          Die Unmoeglichkeit ist mathematisch bewiesen.

          http://www.informatik.hu-berlin.de/lehrstuehle/automaten/logik/node25.html#SECTION00550200000000000000

  2. kennt jemand einen Linkchecker, der auch Javascript-Links mit abcheckt?

    Es gibt keine "JavaScript-Links". Es gibt lediglich ganz normale
    HTML-Links (<a href="blablabla">link</a>) und die können auch
    maschinell geprüft werden. Du rufst innerhalb eines solchen Links
    eben eine JavaScript-Funktion auf, die den Seitenwechsel bewirkt.
    Wenn Du nun diese Funktion überprüfen willst, mußt Du Dir ein
    Programm schreiben, was JavaScript versteht, mir ist da leider
    keins bekannt.
    Wenn es wirklich sooo einfach wäre, dann könnte bestimmt schon
    längst die gängigen Webrobots JavaScript. Vielleicht rufen Deine
    "JavaScript-Links" alle die gleiche Funktion auf, dann kannst Du
    Dir dazu ein passendes Programm schreiben.
    Aber wie ich schon sagte, Links sind es nicht und für die aufge-
    rufene Funktion gibt es sicher auch 242 versch. Varianten, was
    imho auch n.d.p. mit seinem Beispiel zeigen wollte.

    Ich hab da nämlich 'ne Seite, die hat ganze 3 oder 4 normale Links, alles andere ist Javascript.

    Die Navigation ausschließlich per JavaScript zu realisieren ist
    eine der schlechtesten Ideen überhaupt.
    Schonmal überlegt, dass nicht alle Deine Besucher JavaScript aus
    welchen Gründen auch immer aktiviert haben?

    1. kennt jemand einen Linkchecker, der auch Javascript-Links mit abcheckt?

      Es gibt keine "JavaScript-Links". Es gibt lediglich ganz normale
      HTML-Links (<a href="blablabla">link</a>) und die können auch
      maschinell geprüft werden. Du rufst innerhalb eines solchen Links
      eben eine JavaScript-Funktion auf, die den Seitenwechsel bewirkt.

      Na gut, aber wass ich wollte ist ja sofort klar geworden.

      Wenn Du nun diese Funktion überprüfen willst, mußt Du Dir ein
      Programm schreiben, was JavaScript versteht, mir ist da leider
      keins bekannt.

      Wenn es wirklich sooo einfach wäre, dann könnte bestimmt schon
      längst die gängigen Webrobots JavaScript.

      Das halte ich für ein Gerücht. Aber wenn alle meinen, dass man sowieso auf Java-Script besser verzichten sollte, welcher Programmierer soll denn da motiviert werden seinem Robot sowas beizubringen. Das hält der doch glatt für vergebene Liebesmüh.

      Vielleicht rufen Deine
      "JavaScript-Links" alle die gleiche Funktion auf, dann kannst Du
      Dir dazu ein passendes Programm schreiben.
      Aber wie ich schon sagte, Links sind es nicht und für die aufge-
      rufene Funktion gibt es sicher auch 242 versch. Varianten, was
      imho auch n.d.p. mit seinem Beispiel zeigen wollte.

      Ich hab da nämlich 'ne Seite, die hat ganze 3 oder 4 normale Links, alles andere ist Javascript.
      Die Navigation ausschließlich per JavaScript zu realisieren ist
      eine der schlechtesten Ideen überhaupt.

      Wenn man nichts Serverseitig regeln kann, dann ist es bei über 300 Seiten mit einer über Javascript abgearbeiteten Linkdatei das effektivste überhaupt, insbesondere wenn noch die Frage "wie ändere ich 2-3 Frames gleichzeitig" ins Spiel kommt.

      Schonmal überlegt, dass nicht alle Deine Besucher JavaScript aus
      welchen Gründen auch immer aktiviert haben?

      Abrieb ist überall. Es soll ja z.B. auch Leute geben, die mit Netscape unterwegs sind (stimmt's Bio ;-)

      Man kann eben nicht alles haben...

      Gruß

      Andreas