Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Focus() без скроллинга (https://javascript.ru/forum/dom-window/51839-focus-bez-skrollinga.html)

NO_ONE 21.11.2014 13:37

Focus() без скроллинга
 
Доброго времени суток.

В js не разбираюсь. Нашёл скрипт, предотвращающий скроллинг при установке фокуса на элемент. Взят с stackoverflow.

var cursorFocus = function(elem) {
  var x, y;
  // More sources for scroll x, y offset.
  if (typeof(window.pageXOffset) !== 'undefined') {
      x = window.pageXOffset;
      y = window.pageYOffset;
  } else if (typeof(window.scrollX) !== 'undefined') {
      x = window.scrollX;
      y = window.scrollY;
  } else if (document.documentElement && typeof(document.documentElement.scrollLeft) !== 'undefined') {
      x = document.documentElement.scrollLeft;
      y = document.documentElement.scrollTop;
  } else {
      x = document.body.scrollLeft;
      y = document.body.scrollTop;
  }

  elem.focus();

  if (typeof x !== 'undefined') {
      // In some cases IE9 does not seem to catch instant scrollTo request.
      setTimeout(function() { window.scrollTo(x, y); }, 100);
  }
}


Объясните, пожалуйста, что нужно написать в onclick="", чтобы скрипт заработал?

ksa 21.11.2014 15:49

Цитата:

Сообщение от NO_ONE
что нужно написать в onclick="", чтобы скрипт заработал?

Сделать там вызов функции cursorFocus() и передать ей ссылку на "фокусируемый" элемент...


Часовой пояс GMT +3, время: 18:33.