fix bugs
This commit is contained in:
146
script.js
146
script.js
@@ -115,8 +115,11 @@ const cards = [
|
||||
|
||||
const navigationItems = document.querySelectorAll(".nav__item");
|
||||
const url = window.location.pathname;
|
||||
const width = window.innerWidth;
|
||||
let subscribe;
|
||||
|
||||
console.log(width);
|
||||
|
||||
navigationItems.forEach((item) => {
|
||||
item.onclick = (elem) => {
|
||||
elem.preventDefault();
|
||||
@@ -130,96 +133,55 @@ navigationItems.forEach((item) => {
|
||||
};
|
||||
});
|
||||
|
||||
const cardsToShow =
|
||||
url === "/" || url === "/index.html" ? cards : cards.slice(0, 4);
|
||||
|
||||
cardsToShow.forEach((card, index) => {
|
||||
const div = document.createElement("div");
|
||||
div.className = "card";
|
||||
div.innerHTML = `
|
||||
<img class="card__image" src="/images/house.jpg" alt="card-image" />
|
||||
<ul class="themes">
|
||||
${card.themes.map((theme) => {
|
||||
return `<li class="themes__name">${theme}</li>`;
|
||||
})}
|
||||
</ul>
|
||||
<p class="card__title">${card.title}</p>
|
||||
<p class="card__describe">
|
||||
${
|
||||
card.describe
|
||||
} <button value=${index} class="more">См. подробнее...</button>
|
||||
</p>
|
||||
<div class="card-inf">
|
||||
<p class="card-inf__item time">${card.time}</p>
|
||||
<p class="card-inf__item date">${card.date}</p>
|
||||
</div>
|
||||
<button value=${index} class="subscribe">Записаться</button>
|
||||
`;
|
||||
|
||||
document.querySelector(".cards").append(div);
|
||||
});
|
||||
|
||||
subscribe = [
|
||||
...document.querySelectorAll(".subscribe"),
|
||||
...document.querySelectorAll(".more"),
|
||||
];
|
||||
|
||||
subscribe.forEach((el) => {
|
||||
el.addEventListener("click", () => {
|
||||
console.log(el.value);
|
||||
localStorage.setItem("card", JSON.stringify(cards[el.value]));
|
||||
location.href = "about.html";
|
||||
});
|
||||
});
|
||||
|
||||
if (url === "/about.html") {
|
||||
const cardFromStorage = JSON.parse(localStorage.getItem("card"));
|
||||
|
||||
const div = document.createElement("div");
|
||||
div.innerHTML = `
|
||||
<p class="about__title">
|
||||
${cardFromStorage.describe}
|
||||
</p>
|
||||
<div class="about-more">
|
||||
<img
|
||||
src="./images/house.jpg"
|
||||
alt="card-image"
|
||||
class="about__image"
|
||||
/>
|
||||
<div class="about-text">
|
||||
<p class="text">
|
||||
${cardFromStorage.fullDescription}
|
||||
</p>
|
||||
<p class="card-inf__item date">${cardFromStorage.date}</p>
|
||||
<p class="card-inf__item time">${cardFromStorage.time}</p>
|
||||
<p class="card-inf__item people">до ${cardFromStorage.people}</p>
|
||||
<button class="enroll">Записаться</button>
|
||||
</div>
|
||||
</div>
|
||||
`;
|
||||
|
||||
const div2 = document.createElement("div");
|
||||
div2.innerHTML = `
|
||||
<div class="card-description">
|
||||
<p class="card-description__header">Тема:</p>
|
||||
<p class="card-description__text">
|
||||
${cardFromStorage.describe}
|
||||
</p>
|
||||
</div>
|
||||
<div class="card-description">
|
||||
<p class="card-description__header">Для кого:</p>
|
||||
<p class="card-description__text">
|
||||
${cardFromStorage.forWhome}
|
||||
</p>
|
||||
</div>
|
||||
<div class="card-description">
|
||||
<p class="card-description__header">Описание:</p>
|
||||
<p class="card-description__text last">
|
||||
${cardFromStorage.fullDescription}
|
||||
</p>
|
||||
</div>
|
||||
`;
|
||||
|
||||
document.querySelector(".about-card").append(div);
|
||||
document.querySelector(".about-card").after(div2);
|
||||
function fillMainPage() {
|
||||
setCards(cards);
|
||||
}
|
||||
|
||||
function setCards(cards) {
|
||||
cards.forEach((card, index) => {
|
||||
const div = document.createElement("div");
|
||||
div.className = "card";
|
||||
div.innerHTML = `
|
||||
<div class='${
|
||||
(width <= 1024 && index % 2 === 0) || (width > 1024 && index % 4 === 0)
|
||||
? "card-inner extreme"
|
||||
: "card-inner"
|
||||
}'>
|
||||
<img class="card__image" src="/images/house.jpg" alt="card-image" />
|
||||
<ul class="themes">
|
||||
${card.themes.map((theme) => {
|
||||
return `<li class="themes__name">${theme}</li>`;
|
||||
})}
|
||||
</ul>
|
||||
<p class="card__title">${card.title}</p>
|
||||
<p class="card__describe">
|
||||
${
|
||||
card.describe
|
||||
} <button value=${index} class="more">См. подробнее...</button>
|
||||
</p>
|
||||
<div class="card-inf">
|
||||
<p class="card-inf__item time">${card.time}</p>
|
||||
<p class="card-inf__item date">${card.date}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="buttow-wrapper">
|
||||
<button value=${index} class="subscribe">Записаться</button>
|
||||
</div>
|
||||
`;
|
||||
|
||||
document.querySelector(".cards").append(div);
|
||||
});
|
||||
|
||||
subscribe = [
|
||||
...document.querySelectorAll(".subscribe"),
|
||||
...document.querySelectorAll(".more"),
|
||||
];
|
||||
|
||||
subscribe.forEach((el) => {
|
||||
el.addEventListener("click", () => {
|
||||
console.log(el.value);
|
||||
localStorage.setItem("card", JSON.stringify(cards[el.value]));
|
||||
location.href = "about.html";
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user