J'ai combiné une fonction de recherche avec un accordéon jQueryUI.
La fonction de recherche met en évidence le titre de chaque section que le terme de recherche entré est trouvé. J'essaie de trouver un moyen de faire défiler la fenêtre vers la première occurrence d'un terme trouvé lorsqu'une section est ouverte, ce qui évite à l'utilisateur de devoir faire défiler du contenu potentiellement très long.
Chaque terme mis en surbrillance est entouré de <span class="highlight">term</span>
. J'en suis au point où j'ai ajouté un gestionnaire onclick="jumpTo(chapter_number)"
à chaque en-tête de section lorsqu'un terme y est trouvé. J'ai juste besoin d'aide avec la fonction jumpTo
. Je vous remercie!jQuery Accordion - Faites défiler jusqu'à l'élément avec la classe spécifique sur la section ouverte
Voici mon violon: http://jsfiddle.net/jameshuckabonetech/YsdDn/
post-scriptum Le violon est génial! Premier ...
MISE À JOUR code Fin ...
$("#accordion").accordion(
{
autoHeight: false, collapsible: true, active: false,
activate:function(event, ui)
{
if ($(ui.newPanel).find('.highlight').length>0 && $("#jump-box").prop('checked') == true)
$('html, body').animate(
{
scrollTop: $(ui.newPanel).find('.highlight').offset().top
}
, 2000);
}
});
Vous allez avoir besoin d'ajouter un peu plus de code pour nous de travailler avec. Un exemple de jsfiddle.net où vous êtes en ce moment est très utile. – idrumgood
Fait, mis à jour ... –