{timeout}
время, сколько максимум готовы прождать первого «ленивца».myDiv.length
— можно вывести в консоль, как вариант. console.log(myDiv.length); // undefined
myDiv.children
— стоит почитать документацию. Важный момент: это «живая» коллекция. Как только удаляете из неё элемент, коллекция обновляется. Удалили 1-й, все сдвинулись на 1, и 3-м станет тот, что ранее был 4-м.arr === undefined
'aBc-dEf-GH' => ['aBc', 'dEf', 'GH']
map()
пробежит по каждому элементу, возвращая новый. 'dEf' => 'Def'
'aBc' => 'abc'
function camelize(str) {
return str.split('-')
.map((word, i) => i ? word.substr(0, 1).toUpperCase() + word.substr(1).toLowerCase() : word.toLowerCase())
.join('');
}
hosts
любой домен, указывающий на адрес 127.0.0.1
, и работать с ним.Access-Control-Allow-Origin: *
const sample = 'submenu-';
const links = [...document.querySelectorAll('ul.navbar-main a')]
.filter((a) => a.id.startsWith(sample));
console.log(links); // массив со ссылками
links.forEach((a) => a.addEventListener('click', (e) => e.target.classList.add('top'));
a[id^=submenu]
выберет те элементы anchor, у которых id начинается с "submenu":[...document.querySelectorAll('ul.navbar-main a[id^=submenu]')]
.forEach((a) => a.addEventListener('click', (e) => e.target.classList.add('top'));
if(event.key = a8[event.key]){
— здесь вы просто присваиваете в event.key
значение из a8
. При вводе маленкой "o"
, возвращается ноль, и if ()
не срабатывает. В двух других случаях возвращается не-ноль, и срабатывает код внутри if ()
.{
let isYMLoaded = false;
const loadYM = () => {
if (isYMLoaded) return;
isYMLoaded = true;
setTimeout(() => {
// Metrika code
// ...
}, 0);
}
const eventNames = 'click,scroll,touchstart,mouseenter'.split(',');
const handlerYM = () => {
eventNames.forEach((name) => document.removeEventListener(name, handlerYM));
loadYM();
}
if (!!~navigator.userAgent.indexOf('YandexMetrika')) {
// Yandex
loadYM();
} else {
// нормальный посетитель
eventNames.forEach((name) => document.addEventListener(name, handlerYM));
}
}
for (let i = 8; i < 13; i++) console.log( ('00' + i).substr(-2));
/* выведет:
08
09
10
11
12
*/
for (let i = 8; i < 13; i++) console.log( i.toString().padStart(2, '0'));
// тот же результат
String.padStart() http://xxxxx/modules/promua/ajax.php
по незащищённому HTTP, хотя страница загружена по HTTPS.