Прокрутите по горизонтали до элемента внутри другого элемента

В Firefox вы можете легко горизонтально прокрутить элемент внутри другого элемента через scrollTo() функция:

var el=$("#element");
var x=el.position().left-el.width();
$("#container").get(0).scrollTo(x,0);

Но в Chrome это не удается. Вот пример:

http://jsfiddle.net/o9wgufq2/

Есть ли кросс-браузерный способ сделать это?

1 ответ

Решение

Прежде всего, пожалуйста, заключите ваши атрибуты в HTML в двойные кавычки, т.е. класс ="с" не класс = с

jQuery scrollTo - это плагин, поэтому, если вы хотите его использовать, вам нужно загрузить плагин. но для достижения цели здесь достаточно методов scrollLeft и scrollTop.

var el=$(".c .d4");
var x=el.position().left-el.width();
$(".c").eq(0).scrollLeft(x);

Обратите внимание, я изменил get(0) с помощью eq(0), чтобы получить эквивалентный индекс 0 элементов.c.

Вот обновленная скрипка вашей скрипки. http://jsfiddle.net/o9wgufq2/5/

Другие вопросы по тегам