obtener elemento ejemplo atributos atributo agregar javascript jquery html

javascript - ejemplo - ¿Cómo ir a un elemento específico en la página?



obtener id de un elemento javascript (5)

La técnica estándar en forma de complemento sería algo como esto:

(function($) { $.fn.goTo = function() { $(''html, body'').animate({ scrollTop: $(this).offset().top + ''px'' }, ''fast''); return this; // for chaining... } })(jQuery);

Entonces podrías decir $(''#div_element2'').goTo(); para desplazarse a <div id="div_element2"> . El manejo de opciones y la configurabilidad se deja como un ejercicio para el lector.

Esta pregunta ya tiene una respuesta aquí:

En mi página HTML, quiero poder ''ir a'' / ''desplazarse a'' / ''enfocarme'' en un elemento de la página.

Normalmente, usaría una etiqueta de anclaje con href="#something" , pero ya estoy usando el evento hashchange junto con el complemento BBQ para cargar esta página.

Entonces, ¿hay alguna otra forma, a través de JavaScript, para que la página vaya a un elemento dado en la página?

Aquí está el esquema básico de lo que estoy tratando de hacer:

function focusOnElement(element_id) { $(''#div_'' + element_id).goTo(); // need to ''go to'' this element } <div id="div_element1"> yadda yadda </div> <div id="div_element2"> blah blah </div> <span onclick="focusOnElement(''element1'');">Click here to go to element 1</span> <span onclick="focusOnElement(''element2'');">Click here to go to element 2</span>


Para desplazarse a un elemento específico en su página , puede agregar una función a su jQuery(document).ready(function($){...}) siguiente manera:

$("#fromTHIS").click(function () { $("html, body").animate({ scrollTop: $("#toTHIS").offset().top }, 500); return true; });

Funciona como un encanto en todos los navegadores. Ajuste la velocidad de acuerdo a su necesidad.


Si el elemento no está actualmente visible en la página, puede usar el scrollIntoView() nativo scrollIntoView() .

$(''#div_'' + element_id)[0].scrollIntoView( true );

Donde true significa alinearse a la parte superior de la página, y false se alinea al final.

De lo contrario, hay un plugin scrollTo() para jQuery que puedes usar.

O tal vez solo obtenga la position()(docs) top position()(docs) del elemento y configure scrollTop()(docs) en esa posición:

var top = $(''#div_'' + element_id).position().top; $(window).scrollTop( top );


aquí hay un javascript simple para eso

llama esto cuando necesites desplazar la pantalla a un elemento que tenga id = "yourSpecificElementId"

window.scroll(0,findPos(document.getElementById("yourSpecificElementId")));

y necesitas esta función para el trabajo:

//Finds y value of given object function findPos(obj) { var curtop = 0; if (obj.offsetParent) { do { curtop += obj.offsetTop; } while (obj = obj.offsetParent); return [curtop]; } }

la pantalla se desplazará a su elemento específico.