Page 122 - 6108
P. 122

Метод  document.elementFromPoint  (x,  y)  повертає  елемент,  який
               знаходиться на координатах (x, y) щодо вікна.
                     let elem = document. elementFromPoint (10, 20);

                     Координати в документі
                     Система  координат  щодо  сторінки  або,  інакше  кажучи,  щодо  документа,
               починається  в  лівому-верхньому  кутку,  але  не  вікна,  а  саме  сторінки.  І
               координати в ній означають позицію по відношенню не до вікна браузера, а до
               документа в цілому.
                     Вони потрібні в першу чергу для того, щоб показувати елемент в певному
               місці сторінки, а не вікна.
                     На  жаль,  готової  функції  для  отримання  координат  елемента  щодо
               сторінки немає. Але її можна легко написати самим.
                     Ці дві системи координат жорстко пов'язані:

                     pageY = clientY + поточна вертикальна прокрутка.
                     Отримати  значення  прокрутки  можна  через  спеціальні  властивості
               window.pageXOffset/pageYOffset
                     Наша       функція       getCoords          (elem)        буде      брати      результат
               elem.getBoundingClientRect() і додавати поточну прокрутку документа.

                     Результат getCoords: об'єкт з координатами {left: .., top: ..}
                     function getCoords(elem) {
                       let box = elem.getBoundingClientRect();
                       return {
                         top: box.top + pageYOffset,
                         left: box.left + pageXOffset
                       };
                     }
                     3.4.6 Управління стилями елементів

                     Для роботи зі стильовими властивостями елементів в JavaScript
               застосовуються, головним чином, два підходи:
                     1)  зміна властивості style
                     2)  зміна значення атрибута class
                     Властивість  style  представляє  складний  об'єкт  для  управління  стилем  і
               безпосередньо зіставляється з атрибутом style html-елемента. Цей об'єкт містить
               набір     властивостей        CSS:     element.style.propertyCSS.                  Наприклад,
               встановимо колір шрифту:

                     let body = document.documentElement;
                     body.style.color = "blue";
                     В даному випадку назва властивості color збігається з властивістю css.

                     Однак  ряд  властивостей  css  в  назвах  мають  дефіс,  наприклад,  font-
               family. В JavaScript для цих властивостей дефіс не вживається. Тільки перша
               буква, яка йде після дефіса, переводиться в верхній регістр:
                     bosy.style.fontFamily = "Verdana";
   117   118   119   120   121   122   123   124   125   126   127