Me pregunto por qué no puedo hacer que las pestañas de arranque se correspondan con los enlaces. Probé un montón de soluciones en stackoverflow, pero la estructura del código se ve diferente a la mía porque supongo que no son bootstrap 4.
Aquí está el html de Pestañas usando atributos de datos
<!-- Nav tabs --> <ul class="nav nav-tabs" role="tablist"> <li class="nav-item"> <a class="nav-link active" data-toggle="tab" href="#home" role="tab">Home</a> </li> <li class="nav-item"> <a class="nav-link" data-toggle="tab" href="#profile" role="tab">Profile</a> </li> <li class="nav-item"> <a class="nav-link" data-toggle="tab" href="#messages" role="tab">Messages</a> </li> <li class="nav-item"> <a class="nav-link" data-toggle="tab" href="#settings" role="tab">Settings</a> </li> </ul> <!-- Tab panes --> <div class="tab-content"> <div class="tab-pane active" id="home" role="tabpanel">...</div> <div class="tab-pane" id="profile" role="tabpanel">...</div> <div class="tab-pane" id="messages" role="tabpanel">...</div> <div class="tab-pane" id="settings" role="tabpanel">...</div> </div>El uso de este JS de otra publicación en realidad cambia el enlace para incluir #página al hacer clic en las pestañas, pero si ingreso esa dirección, siempre vuelve a la página de inicio:
// Javascript to enable link to tab var url = document.location.toString(); if (url.match('#')) { $('.nav-tabs a[href="#' + url.split('#')[1] + '-tab"]').tab('show'); } //add a suffix // Change hash for page-reload $('.nav-tabs a').on('shown.bs.tab', function (e) { window.location.hash = e.target.hash; })Me disculpo porque esta pregunta se ha hecho en diferentes iteraciones en otros lugares, pero no he visto la pregunta base (es decir, cómo hacer esto con el código de inicio de bootstrap) respondida.
Su marcado es bueno.
Lo que significa que probablemente tengas un error en tu consola. Asegúrese de haber cargado estos scripts, en este orden:
Hay muchas formas de obtenerlos, pero la ruta más segura es ir a Bootstrap v4 y desplazarse hacia abajo hasta Bootstrap CDN .
Su marcado + guiones correctos =
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" rel="stylesheet"/> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js"></script> <ul class="nav nav-tabs" role="tablist"> <li class="nav-item"> <a class="nav-link active" data-toggle="tab" href="#home" role="tab">Home</a> </li> <li class="nav-item"> <a class="nav-link" data-toggle="tab" href="#profile" role="tab">Profile</a> </li> <li class="nav-item"> <a class="nav-link" data-toggle="tab" href="#messages" role="tab">Messages</a> </li> <li class="nav-item"> <a class="nav-link" data-toggle="tab" href="#settings" role="tab">Settings</a> </li> </ul> <!-- Tab panes --> <div class="tab-content"> <div class="tab-pane active" id="home" role="tabpanel">Home</div> <div class="tab-pane" id="profile" role="tabpanel">Profile</div> <div class="tab-pane" id="messages" role="tabpanel">Messages</div> <div class="tab-pane" id="settings" role="tabpanel">Settings</div> </div> Tenga en cuenta que no necesita ningún javascript adicional para que funcione, todo está incluido en bootstrap.js .
Solo tiene que incluir bootstrap.bundle.js junto con jquery y bootstrap.js en el siguiente orden