jQuery - плавающий заголовок - PullRequest
       10

jQuery - плавающий заголовок

2 голосов
/ 20 августа 2011

Среда: Rails 3.1rc5 с jQuery, ubuntu 11.04, Google Chrome (13), Mozilla Firefox (6.0)

Я работаю над проектом, который имеет довольно ограниченное развертывание в офисе - поэтому ясмело могу сказать, что у нас всегда будет это в последней версии Firefox;мы можем делать любые сумасшедшие js, css3 или html5, которые мы хотим.

Проект предназначен для имитации приложения, с боковой панелью (для действий) и панелью в середине со списком ордеров, которые прокручиваются.(как по горизонтали, так и по вертикали), в то время как тело не прокручивается.

Средняя панель имеет заголовок над ордерами, которые нам нужно перемещать вниз по странице при прокрутке пользователя.Мы не можем использовать position: fixed, потому что нам нужно прокручивать как по горизонтали, так и по вертикали (полей больше, чем экранной недвижимости).У меня это работает, но в Chrome он запаздывает, а в Firefox очень запаздывает - кажется, что заголовок фактически не перемещается, пока пользователь не перестанет прокручивать.

Поскольку это своего рода сложный макет, япопытался воссоздать его в jsfiddle, однако я не могу заставить его фактически заставить работать прокрутку на средней панели.По крайней мере, это даст лучшее представление о том, что я пытаюсь сделать:

http://jsfiddle.net/d3vkit/8E786/

Вот код, который я использую:

jQuery ->
  order_headings_list = $("#order_headings_list")
  orders_list = $("#orders_list")

  orders_list.scroll ->
    topOffset = orders_list.scrollTop() + "px"
    order_headings_list.css('top', topOffset)

Вотjavascript, который выдает:

orders_list.scroll(function() {
  var leftOffset, topOffset;
  topOffset = orders_list.scrollTop() + "px";
  order_headings_list.css('top', topOffset);
});

Моя единственная идея заключается в том, что я перемещаю кучу элементов списка по множеству элементов списка, возможно, это слишком много.

делать этот плавающий заголовок правильно?Любые указатели, чтобы затянуть вещи?(И почему моя скрипка не показывает прокрутку переполнения?)

ОБНОВЛЕНИЕ

Я немного поработал над jsfiddle (http://jsfiddle.net/d3vkit/8E786/) и получил перемещение заголовка, показываязадержка, которая случается. Мне кажется, что вы прокручиваете, и он обновляет CSS, но не достаточно быстро, так что это кажется нервным. Как я могу это исправить?

1 Ответ

0 голосов
/ 20 августа 2011

почему бы просто не использовать фиксированное положение

http://jsfiddle.net/pnAvm/

...