function is_paged() {
const arr = window.location.pathname.split("/");
let index = arr.indexOf("page");
return index >= 0 ? +arr[++index] : false
}
for (var i = 0; i < menuLinks.length; i++) {
const page = is_paged();
if (menuLinks[i].pathname === currentPage) {
menuLinks[i].classList.add("active");
} else if (page == i){
menuLinks[i].classList.add("active");
}
}
ну попробуй так чтоле
вообще там на самом деле ещё нюансы есть типа атрибуты на ссылки повесить что бы потом понимать что это ссылка, ну пока я в условии с индексом написал, ну как ты собираешь писать если не знаешь js, странно это, ну на вопрос я ответил в любом случае, если что-то не отработает задавай новый вопрос
BiFly, хотя в варианте "Хардкор" я там чушь написал, но да плевать, то что я там написал - ничего не поменяло, кароче вот вариант через замыкание через замыкание
BiFly, ну на счёт первого условия поторопился чутка, ладно разжую
когда ты вызываешь функцию при клике, у тебя запускается функция, в котором ты создаёшь объект audio и далее - отрабатывает первое условие в котором ты запускаешь музыку, и изменяешь переменную miniplay на 1, когда ты во второй раз нажимаешь на ту же самую кнопку - у тебя по новой создаётся объект audio ( и оно не запущено, создаёт новое понимаешь ? это не старое audio которое там за горами играет ) и у тебя отрабатывает второе условие в котором ты ставишь на паузу "новое аудио" - которое ещё даже не запущено, и переменная miniplay становится равно 0, в третий раз когда ты нажимаешь на кнопку у тебя снова создаётся audio новое и ты его запускаешь , а старое где-т горами так и играет, ну самый простой харкорный способ объявить переменную выше и перед тем как запускать функцию - ставить на паузу ( тем самым очищать мусор ) и присваиваться новое значение audio, а так конечно следовало бы это в классе например или через замыкание простое - хардкор
1 - возможно но не факт - использовать loader у react-router-dom
2 - все функции которые отвечают за получение данных обернуть в useCallback и добавить их в один useEffect как зависимости и в этом useEffect выполнить сразу 3 функции и всё по порядку ( как душе будет угодно )
в localStorage заметку какую-нибудь сделай и всё, и при входе на сайт - проверяешь есть ли она там, если её нет - спрашиваешь пользователя о куках и заносишь заметку туда при условии если он согласился
TipTop89, мало ли если я где-то проглядел доки, и ты сможешь найти x,y хотя бы каждой из точек которые расставлены у тебя на кривой, то пиши - смогу помочь
TipTop89, я глянул доки у библиотеки этой, и там нет возможности сделать фон градиентом такой же как на скрине.
там можно например собственный фон установить для всего канваса или сделать градиент от определенной точки, но что бы сделать фон от кривой и до низа - не выйдет
что бы вообще на отдельном холсте сделать такой же градиент на кривой - нужно узнать точки на кривой которая расположена на холсте - то есть найти x,y - пробежаться по этим точкам соединив линиями в итоге из этих линий получится фигура которую можно залить уже градиентом
Владимир, mediaStream - здесь у тебя промис, результатом промиса и будет mediaStream, тебе надо вызвать .then и в коллбэке получить результат промиса и внутри колбэка делать свои манипуляции
ну попробуй так чтоле
вообще там на самом деле ещё нюансы есть типа атрибуты на ссылки повесить что бы потом понимать что это ссылка, ну пока я в условии с индексом написал, ну как ты собираешь писать если не знаешь js, странно это, ну на вопрос я ответил в любом случае, если что-то не отработает задавай новый вопрос