Pour ceux qui utilisent Ruby on Rails ou tout autre script côté serveur, vous souhaiterez utiliser l' anchor
option sur les chemins. En effet, une fois la page chargée, le hachage d'URL n'est pas disponible. Vous voudrez fournir le bon onglet via votre lien ou la soumission de formulaire.
<%= form_for @foo, url: foo_path(@foo, anchor: dom_id(foo)) do |f| %>
# Or
<%= link_to 'Foo', foo_path(@foo, anchor: dom_id(foo)) %>
Si vous utilisez un préfixe pour empêcher la fenêtre de sauter à l'ID:
<%= form_for @foo, url: foo_path(@foo, anchor: "bar_#{dom_id(foo)}") do |f| %>
Ensuite, vous CoffeeScript:
hash = document.location.hash
prefix = 'bar_'
$('.nav-tabs a[href=' + hash.replace(prefix, '') + ']').tab 'show' if hash
$('.nav-tabs a').on 'shown.bs.tab', (e) ->
window.location.hash = e.target.hash.replace '#', '#' + prefix
Ou JavaScript:
var hash, prefix;
hash = document.location.hash;
prefix = 'bar_';
if (hash) {
$('.nav-tabs a[href=' + hash.replace(prefix, '') + ']').tab('show');
}
$('.nav-tabs a').on('shown.bs.tab', function(e) {
window.location.hash = e.target.hash.replace('#', '#' + prefix);
});
Cela devrait fonctionner dans Bootstrap 3.