Синхронная прокрутка двух кадров (пожалуйста, независимо от браузера!)

У меня есть веб-страница из трех фреймов, примерно так:

+----------------+
|       0        |
+-------+--------+
|       |        |
|   1   |    2   |
|       |        |
+-------+--------+

Кадры 1 и 2 предназначены для сравнения некоторых похожих данных. Я хотел бы синхронизировать вертикальные полосы прокрутки на этих кадрах (устанавливая значение полосы прокрутки с обеих сторон одинаковым).

Мой текущий подход состоит в том, чтобы иметь следующий код в кадре 0:

<script>
   function scroll_sync() {
      var f1 = window.parent.frames[1];
      var f2 = window.parent.frames[2];

      f1.onscroll = function () { f2.scroll(f2.scrollX, f1.scrollY); }
      f2.onscroll = function () { f1.scroll(f1.scrollX, f2.scrollY); }
   }

  dojo.addOnLoad(scroll_sync);
</script>

Это отлично работает в Firefox 3.x и Chrome 5.x. Однако не в Internet Explorer 8. Любые идеи?


person Arkady    schedule 14.06.2010    source источник


Ответы (1)


Я думаю, что в IE вам нужно использовать scrollTo, например: f2.scrollTo(0,f1_scroll_position);

person Aaron Harun    schedule 14.06.2010
comment
Я думаю, проблема в свойстве scrollX, а не в методе scroll, который работает в IE. - person Arkady; 15.06.2010