Javascript funktioniert in Chrome, aber nicht IE oder Firefox

Ich bin mit Javascript innerhalb einer HTML-Datei zum erweitern und ausblenden von Elementen der Datei.

Dies ist das Skript:

function toggleBlock(pstrID){
  var myDiv = document.getElementById('d' + pstrID);
  if (myDiv){
    if (myDiv.style.display == 'none'){
      showBlock(pstrID);
    } else{
      hideBlock(pstrID);
    }
  }
}
function showBlock(pstrID){
  var myDiv = document.getElementById('d' + pstrID);
  if (myDiv){
    myDiv.style.display = 'block';
    var myImage = document.getElementById('i' + pstrID);
    if (myImage){
      myImage.src = 'arrowdown.gif';
      myImage.alt = 'Hide';
    }
    if (document.location.href.indexOf('mk:@') == 0)
      myDiv.innerHTML = myDiv.innerHTML;
  }
}
function hideBlock(pstrID){
  var myDiv = document.getElementById('d' + pstrID);
  if (myDiv){
    myDiv.style.display = 'none';
    var myImage = document.getElementById('i' + pstrID);
    if (myImage){
      myImage.src = 'arrowright.gif';
      myImage.alt = 'Show';
    }
    if (document.location.href.indexOf('mk:@') == 0)
      myDiv.innerHTML = myDiv.innerHTML;
  }
}

Wenn ich das Skript, ich benutze die folgenden:

<a id="h7217" class="expandingblocktemplate" title="" href="javascript:toggleBlock('7217')">
  • In Chrome funktioniert alles einwandfrei.
  • Im IE, Klick auf den link führt zu einem anderen Fenster (Adresse angezeigt wird, ist javascript:toggleBlock('7217') offensichtlich, die Anzahl hängt von der link geklickt wird) und die Fehlermeldung "Internet Explorer kann die Webseite nicht anzeigen".
  • Im Firefox eine neue Registerkarte wird angezeigt und die Fehler-Konsole sagt:
    Fehler: toggleBlock ist nicht definiert
    Quelldatei: javascript:toggleBlock('7217')
    Zeile: 1

InformationsquelleAutor Melvyn | 2011-03-02

Schreibe einen Kommentar