Расширение XUL / Firefox: определить положение прокрутки главного окна - PullRequest
0 голосов
/ 05 мая 2010

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

У кого-нибудь есть идеи? Я не могу найти правильную комбинацию.

Ответы [ 2 ]

1 голос
/ 07 мая 2010

Нашел ответ для всех, кто его ищет:

window.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
  .getInterface(Components.interfaces.nsIWebNavigation)
  .QueryInterface(Components.interfaces.nsIDocShellTreeItem)
  .rootTreeItem.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
  .getInterface(Components.interfaces.nsIDOMWindow)
  .gBrowser.selectedBrowser.contentWindow.scrollY
0 голосов
/ 06 мая 2010

Я думаю, что атрибуты scrollTop и scrollHeight должны помочь вам. Вы можете объединить его с атрибутом clientHeight .

Псевдокод:

scrollPercent = 100
if(clientHeight <= scrollHeight) {
    scrollPercent = (scrollTop / (scrollHeight - clientHeight)) * 100
}
...