// entries - массив объектов IntersectionObserverEntry, каждый из которых представляет один целевой элемент
// observer - объект Intersection Observer, для которого вызывается функция обратного вызова
const cb = (entries, observer) => {
// переберём все IntersectionObserverEntry
entries.forEach(entry => {
// если цель пересекла root
if (entry.isIntersecting) {
// получим целевой элемент
const target = entry.target;
// добавим целевой элемент в массив elements
elements.push(target);
// прекращаем наблюдение за этим целевым элементом
observer.unobserve(target);
}
});
// если в массиве elements имеются элементы
if (elements.length) {
// если highlight.js подключен к странице
if (hasLoaded) {
// то выполним подсветку контента элементов, вызвав для этого функцию highlight
highlight();
} else {
// иначе подключим highlight.js к странице и выполним подсветку элементов, находящихся в массиве elements
loadCSSandJS();
}
}
}
// объявление функции someName
function someName() {
alert('Вы вызвали функцию someName!');
}
// function – ключевое слово, которое означает, что хотим создать функцию
// someName – имя функции
// () – круглые скобки, внутри которых описываются параметры
// { ... } – тело функции
// объявление функции someName
function someName() {
alert('Вы вызвали функцию someName!');
}
// function – ключевое слово, которое означает, что хотим создать функцию
// someName – имя функции
// () – круглые скобки, внутри которых описываются параметры
// { ... } – тело функции
// объявление функции someName
function someName() {
alert('Вы вызвали функцию someName!');
}
// function – ключевое слово, которое означает, что хотим создать функцию
// someName – имя функции
// () – круглые скобки, внутри которых описываются параметры
// { ... } – тело функции
// объявление функции someName
function someName() {
alert('Вы вызвали функцию someName!');
}
// function – ключевое слово, которое означает, что хотим создать функцию
// someName – имя функции
// () – круглые скобки, внутри которых описываются параметры
// { ... } – тело функции
// объявление функции someName
function someName() {
alert('Вы вызвали функцию someName!');
}
// function – ключевое слово, которое означает, что хотим создать функцию
// someName – имя функции
// () – круглые скобки, внутри которых описываются параметры
// { ... } – тело функции
// объявление функции someName
function someName() {
alert('Вы вызвали функцию someName!');
}
// function – ключевое слово, которое означает, что хотим создать функцию
// someName – имя функции
// () – круглые скобки, внутри которых описываются параметры
// { ... } – тело функции
// объявление функции someName
function someName() {
alert('Вы вызвали функцию someName!');
}
// function – ключевое слово, которое означает, что хотим создать функцию
// someName – имя функции
// () – круглые скобки, внутри которых описываются параметры
// { ... } – тело функции
// объявление функции someName
function someName() {
alert('Вы вызвали функцию someName!');
}
// function – ключевое слово, которое означает, что хотим создать функцию
// someName – имя функции
// () – круглые скобки, внутри которых описываются параметры
// { ... } – тело функции
// объявление функции someName
function someName() {
alert('Вы вызвали функцию someName!');
}
// function – ключевое слово, которое означает, что хотим создать функцию
// someName – имя функции
// () – круглые скобки, внутри которых описываются параметры
// { ... } – тело функции