захват события прокрутки в кадре, вложенном в iFrame - PullRequest
0 голосов
/ 11 августа 2011

У меня есть приложение, которое считывает содержимое внешнего документа в iFrame и отображает его для пользователя.Чтобы сделать вещи более сложными, контент в моем iFrame содержит сам набор фреймов, и наши пользователи хотят, чтобы высота страницы увеличивалась или уменьшалась с высотой содержимого.По сути, они не хотят видеть полосы прокрутки.Это работает очень хорошо, когда я запускаю следующую функцию JavaScript при каждой загрузке страницы в наборе фреймов:

function resizeFrame() {
  var windowDoc = window.top.document
  var iframeCheck = null;
 // first, check to see if we can find a window.top.document
  if (windowDoc != null) {
    var iframeCheck = windowDoc.getElementById('docIframe');
  }
 // did we really find the iFrame?
  if (iframeCheck != null) {
   // clean out the iframe height to avoid appending every time
    iframeCheck.style.height = null;
    var scrollHeight = document.body.scrollHeight + 75;
    iframeCheck.style.height = scrollHeight + 'px'
  }
}

Высота страницы просто правильная, и все выглядит хорошо.Проблема в том, что если пользователь помещает свою мышь в рамку и пытается прокрутить колесо мыши, ничего не происходит.То, что я хотел бы сделать, это содержать перемещение страницы по событию прокрутки внутри фрейма.Я думаю, что мне нужно сделать, захватить событие прокрутки и передать его на содержащую страницу, но я не могу понять это.Фактически, я включил предупреждение JavaScript в onScroll () для содержимого фрейма и, как я мог бы прокрутить, оно никогда не срабатывает.Это почти как событие прокрутки полностью недоступно.Кто-нибудь может предложить способ сделать это?

Спасибо, Алекс

1 Ответ

1 голос
/ 12 августа 2011

Я нашел способ обойти это. Я не мог подключиться к событию прокрутки, но событие с колесом мыши все еще было легко доступно и решило проблему красиво.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...