Patrick Andrieu: ...für JavaScript-Verweigerer

Hallo alle!

Bei der Planung einer Startseite (und es geht nur um die Startseite), der mittels JavaScript etwas Dynamik verpasst werden sollte, habe ich zwei Möglichkeiten, um den JavaScript-ablehnenden Besuchern den Inhalt nicht vollends zu verweigern:

1. ich gestalte die Seite im Hinblick auf deren Darstellung
     mit aktiviertem JavaScript und hänge einen noscript-Bereich
     mit dem dem selben Inhalt in einem Quelltextabschnitt nur für die
     Besucher ohne JavaScript dran
  2. ich nutze einen Code, der es mir erlaubt, je nach dem ob
     JavaScript aktiv ist oder nicht, die betroffenen Bereiche
     ein- oder auszublenden

Die Realisierbarkeit beider Lösungen ist nicht das Problem, lediglich die zweite bedeutet etwas mehr Arbeit. Da die Seite aber irgendwann in Suchmaschinen gefunden werden will, erscheint mir die erste Lösung aus dem Grunde vorteilhafter, weil der Inhalt zwei Mal vorhanden ist und sich somit die Anzahl der Keywords, auf die es ankommt, verdoppelt (wenn man visibility:hidden statt display:none benutzt [1]). Andererseits verlängert es unnötigerweise den gesamten Quelltext.

Bei der zweiten Lösung müsste es so sein, dass die betroffenen Bereiche mit JavaScript erst mal ausgeblendet, dann wieder mit JavaScript positioniert, sichtbar gemacht werden, etc.. Vorteil hier: kürzeren Quelltext insgesamt

Daher interessiert mich Eure Erfahrung, wie handhabt Ihr so was, was schlagt Ihr vor etc...

[1] Bis jetzt machte ich die Erfahrung, dass Keywords in mit visibility:hidden formatierten Bereichern gefunden werden, bei display:none nicht.

Viele Grüße aus Frankfurt/Main,
Patrick

--

_ - jenseits vom delirium - _
<hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash>
Nichts ist unmöglich? Doch!
  1. hi,

    Da die Seite aber irgendwann in Suchmaschinen gefunden werden will, erscheint mir die erste Lösung aus dem Grunde vorteilhafter, weil der Inhalt zwei Mal vorhanden ist und sich somit die Anzahl der Keywords, auf die es ankommt, verdoppelt

    Ich sehe da zwei Nachteile:

    • Sowohl aus Sicht einer Suchmaschine als auch eines Textbrowsers wirst du eine Quaselstrippe sein, die sich wiederholt.
    • Sowohl aus Sicht einer Suchmaschine als auch eines Textbrowsers wirst du eine Quaselstrippe sein, die sich wiederholt.

    Bei der zweiten Lösung müsste es so sein, dass die betroffenen Bereiche mit JavaScript erst mal ausgeblendet, dann wieder mit JavaScript positioniert, sichtbar gemacht werden, etc.. Vorteil hier: kürzeren Quelltext insgesamt

    Ausblenden generell geht ganz fix und einfach, in dem du nach oder schon während des Ladens per Javascript dem Body eine Klasse zuweist, mit der die betreffenden Elemente per Nachfahrenselektor ausgeblendet werden.
    Nachher dann einzeln wieder sichtbar machen kannst du sie ja per Javascript nach Belieben.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. Hallo wahsaga!

      Ich sehe da zwei Nachteile:
      Sowohl aus Sicht einer Suchmaschine als auch eines Textbrowsers wirst du eine Quaselstrippe sein

      Bin ich das nicht schon? ;)

      eine Quaselstrippe sein, die sich wiederholt.

      Bin ich das nicht schon? ;)

      Außerdem könnte ich die Texte jeweils etwas anders formulieren, als Quaselstrippe fällt mir das sicher nicht schwer ;)

      Wie gesagt, die Realisierbarkeit ist ansonsten nicht das Problem, es geht mir nur um Meinungen.

      Viele Grüße aus Frankfurt/Main,
      Patrick

      --

      _ - jenseits vom delirium - _
      <hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash>
      Nichts ist unmöglich? Doch!
  2. Hallo Patrick,

    [1] Bis jetzt machte ich die Erfahrung, dass Keywords in mit visibility:hidden formatierten Bereichern gefunden werden, bei display:none nicht.

    na ja, hidden hat den Nachteil, dass der Platz ja reserviert bleibt
    und somit gestalterisch nahezu nicht zu verwenden.

    Erfahrungsgemäss (bei mir zumindest) gibt es keinerlei Probleme
    den (ausnahmsweise vernünftigen) Vorschlag von wahsaga umzusetzen;-)

    Du wolltest Meinungen:
    Ok, ich bin kein wirklicher JS Fan, aber dennoch ist es ein
    enorm starkes Mittel, seine Seiten ein wenig Leben und Funktionalität
    einzuhauchen. Und für Adminstrationsseiten eine Riesenarbeitserleichterung, somit will ich mittlerweile gar nicht
    mehr auf JS verzichten(Saulus -> Paulus). Aber in Maßen.

    Alternativ, gibt es nur noch Flash, aber dann doch lieber JS.
    Oder serverseitige Umsetzung des Ganzen, was dann aber oft
    wie "Kanonen auf Spatzen" anmutet.

    Zu deiner Variante 1, das lieber nicht, macht keinen Sinn.

    carpe diem
    Pia

    1. Hallo Pia!

      na ja, hidden hat den Nachteil, dass der Platz ja reserviert bleibt
      und somit gestalterisch nahezu nicht zu verwenden.

      Nicht, wenn man die hidden-Elemente so positioniert, dass sie z.B. auf gleicher Höhe wie die visible stehen. Das JavaScript kann sie später anders positionieren, so dass ohne JavaScript nichts zu sehen ist.

      Ok, ich bin kein wirklicher JS Fan,

      Ich schon. Ich sag's wie Struppi in seiner Signatur: "JavaScript ist toll, PERL auch" - auch wenn ich noch viel Lernbedarf habe ;)

      Alternativ, gibt es nur noch Flash

      Igitt ;)

      Zu deiner Variante 1, das lieber nicht, macht keinen Sinn.

      Ich werde auch die 2. als offizielle Lösung für die geplante Startseite bevorzugen, werde dennoch ein Google-Test mit Variante 1 machen. Beizeiten berichte ich hier im Forum, welche Seite mehr Erfolg hat bei einer Suchmaschinensuche hat.

      carpe diem

      Ein Karpfen am Tag? Nö, ich esse nur selten Fisch ;)

      Viele Grüße aus Frankfurt/Main,
      Patrick

      --

      _ - jenseits vom delirium - _
      <hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash>
      Nichts ist unmöglich? Doch!
  3. Hallo Patrick,

    Du könntest auch alles, was nur mit JS einen Sinn macht, per JS erzeugen, z.B. mit document.write. Wenn alles in einer separaten .js-Datei steht, wird es von nicht-JS-lern noch nicht einmal geladen.

    Gruß, Jürgen

    1. Hallo JürgenB!

      Ups, vor lauter Antworteifer den eigenen Thread fast vergessen!

      Du könntest auch alles, was nur mit JS einen Sinn macht, per JS erzeugen, z.B. mit document.write. Wenn alles in einer separaten .js-Datei steht, wird es von nicht-JS-lern noch nicht einmal geladen.

      Daran habe ich auch gedacht, auch an createElement ff. um die Elemente zu erzeugen. Allerdings muss dann auch der ganze Inhalt in die .js Datei, dann ist mir die Lösung mit ausblenden/einblenden doch lieber.

      Viele Grüße aus Frankfurt/Main,
      Patrick

      --

      _ - jenseits vom delirium - _
      <hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash>
      Nichts ist unmöglich? Doch!