Ich habe versucht, diesem Beispiel zu folgen Registerkarten für die eigene Webseite zu erstellen: http://www.w3schools.com/howto/howto_js_tabs.aspJavascript-Funktion Erstellen von Tabs funktioniert nicht richtig bei onload
Alles funktioniert gut, aber öffnet die Standard-Tag nicht so funktioniert, wie es sollte. Die Registerkarte wird geöffnet, aber die Kopfzeilenfarbe wird nicht korrekt festgelegt.
Hier ist mein HTML für die tablinks:
<div class="wrap" id="wrap">
<ul class="tab">
<li><a href="javascript:void(0)" class="tablinks" onclick="openTab(event, 'Protons')" id="onDefault">Ions</a></li>
<li><a href="javascript:void(0)" class="tablinks" onclick="openTab(event, 'Electrons')">Electrons, X-rays and CME's</a></li>
</ul>
</div>
und hier ist das Skript für die Registerkarten
function openTab(evt, tab) {
var i, tabcontent, tablinks;
tabcontent = document.getElementsByClassName("tabcontent");
for (i=0;i<tabcontent.length;i++){
tabcontent[i].style.display="none";
}
tablinks = document.getElementsByClassName("tablinks");
for (var i = 0; i < tablinks.length; i++) {
tablinks[i].className = tablinks[i].className.replace(" active", "");
}
document.getElementById(tab).style.display="block";
evt.currentTarget.tab += " active";
}
ich derzeit Klicken auf das Ereignis mit
<script>document.getElementById('onDefault').click();</script>
Dies gilt nicht produzieren irgendwelche Fehlermeldungen, aber wenn ich Jquery, dh verwenden:
<script>$('#onDefault').click()</script>
Ich erhalte eine Fehlermeldung, dass:
scripts.js:110 Uncaught TypeError: Cannot read property 'tab' of undefined
Irgendwelche Ideen, was los ist?
Versuchen Ihres Browsers JavaScript-Debugger (in Bruch + Step-Through-Modus). Sie werden das Problem leicht finden. – Dai
_ "Ich klicke gerade auf das Ereignis mit' '" _ - es gibt nichts in diesem Code, das einen Klick auslösen würde, es wird nur der Verweis auf ein Element über sein Ich würde. – CBroe
Ich denke der Fehler liegt 'evt.currentTarget.tab + =" active ";' hier. ** Seitlicher Tipp **: Verwenden Sie [jQueryUI Tabs] (https: // jqueryui.com/tabs /) – philantrovert