Links abhängig vom Javascript laden

Mikelop

Grünschnabel
Hallo,

ich habe ein kleineres Problem, bei dem ich alleine nicht mehr weiter komme.

Ich habe in meiner PHP-Datei zwei Blöcke die Links enthalten:

Block1:

Code:
<p>
<a href="index.php#remote-1">Link 1 mit Java</a>
<a href="index.php#remote-2">Link 2 mit Java</a>
</p>


Block2:

Code:
<p>
<a href="index.php?go=link1">Link 1 ohne Java</a>
<a href="index.php?go=link2">Link 2 ohne Java</a>
</p>

Soweit so gut.

Beim Internetexplorer egal welche Version und wenn kein Javascript aktiv ist soll immer der Block 2 geladen werden.

Bei allen anderen Browsern und wenn Javascript aktiv ist soll Block 1 geladen werden.

Daran hänge ich jetzt.

Mit <noscript>Block2</noscript> kann ich den Block 2 laden, wenn kein Java aktiv.

Nur im Moment lädt er mir dann ja beim inaktiven Java beide Blöcke.

Wie in Foren und bei Google gelesen, gibts ja den <script>...</script> Befehl natürlich auch, aber wenn ich da nur meinen Block reinkopiere <script><p>....</p></script> wird gar nichts angezeigt.


Soweit bin ich bis jetzt gekommen:
Code:
<?php
							
if(eregi("msie",$_SERVER['HTTP_USER_AGENT']))
{
  echo '
  <p>
  <a href="index.php?go=link1">Link 1 ohne Java</a>
  <a href="index.php?go=link2">Link 2 ohne java</a>
  </p>
  ';
}
else
{
  echo '
  <script>
  <p>
  <a href="index.php#remote-1">Link 1 mit Java</a>
  <a href="index.php#remote-2">Link 2 mit Java</a>
  </p>
  </script>
  <noscript>
  <p>
  <a href="index.php?go=link1">Link 1 ohne Java</a>
  <a href="index.php?go=link2">Link 2 ohne Java</a>
  </p>
  </noscript>
  ';
}
?>

Bitte um Hilfe.

Danke
 
Zuletzt bearbeitet:
Die IE Weiche funktioniert, nur jeglicher Code zwischen <script>....</script> wird nicht angezeigt. Der Platz bleibt einfach leer. Muss ich hier irgendwas mit "echo" wie bei PHP machen, oder write:document.... keine Ahnung?

Ich stell morgen oder so mal den betreffenden Code wieder ins Internet, dann kann ich auch einen Link zum Problem posten.

P.S.: Im Dreamweaver wird auch der LinkCode (<p><a......) auch mit einer anderen Farbe dargestellt als sonst, wenn ich es zwischen <script> einfüge.
 
Hi,

lass den Bereich innerhalb der script-Tags mit document.write ausgeben:
Code:
  <script>
  document.write("<p>");
  document.write("<a href=\"index.php#remote-1\">Link 1 mit Java</a>");
  document.write("<a href=\"index.php#remote-2\">Link 2 mit Java</a>");
  document.write("</p>");
  </script>
Ciao
Quaese
 
Innerhalb von <script>...</script> dürfen keine HTML-Tags im herkömmlichen Sinne vorkommen - siehe hierzu die Elementreferenz für script, was dieser Elementtyp enthalten darf.

Hier ein Beispiel mit der write()-Methode des document-Objekts:

HTML:
<body>
  <script type="text/javascript">
    document.write("<p>");
    document.write("<a href='index.php?go=link1'>Link 1 mit Java<\/a> ");
    document.write("<a href='index.php?go=link1'>Link 2 mit Java<\/a> ");
    document.write("<\/p>");
  </script>
  <noscript>
    <p>
      <a href="index.php?go=link1">Link 1 ohne Java</a>
      <a href="index.php?go=link2">Link 2 ohne Java</a>
    </p>
  </noscript>
</body>

//edit: War da wer einen Tick schneller ;-)
 
Zuletzt bearbeitet:
Danke für eure Hilfe. Seperat funktioniert es, aber ich habe jetzt ein Problem mit den beiden '

Ich füge ja den Script-Teil in eine PHP-If Abfrage ein, hier findet ein "echo ' ';" statt.

Jetzt brauche ich aber für das <a href='.....' auch diese einfachen Anführungszeichen.

Wenn ich bei a href=" normale Anführungszeichen verwende, wird der Script-Teil nicht angzeigt.

Was kann ich noch anstatt " und ' verwenden bei dem Link?
 

Neue Beiträge

Zurück