Files
ClassContent/历届学生/fontendsix/项目练习/上课项目/屁桃儿/js/page/info.js
2024-09-27 02:06:13 +08:00

70 lines
1.9 KiB
JavaScript

class info {
constructor() {
this.likeArr = localStorage.getItem("likeArr") == null ? [] : JSON.parse(localStorage.getItem("likeArr"))
this.GetInfo()
}
async GetInfo() {
var res = await indexServe.info({
id: $_GET("id")
});
console.log(res);
header(res.title, '<i class="like iconfont icon-xin"></i>');
var isLike = this.likeArr.filter(v => v.id == res.id);
if (isLike.length != 0) {
$(".like").classList.add("icon-aixin")
$(".like").classList.remove("icon-xin")
}
$(".like").onclick = () => {
var isHave = this.likeArr.filter(v => v.id == res.id);
// 表示已经收藏
if (isHave.length != 0) {
this.likeArr = this.likeArr.filter(v => v.id != res.id)
// 表示未收藏
} else {
this.likeArr.push({
id: res.id,
title: res.title,
img_src: res.img_src
});
}
localStorage.setItem("likeArr", JSON.stringify(this.likeArr))
$(".like").classList.toggle("icon-xin")
$(".like").classList.toggle("icon-aixin")
}
res.imgs.forEach(v => {
console.log("111");
var img = new Image();
img.src = v;
img.onload = function () {
$(".imgList").innerHTML += `
<figure >
<a href="${v}" data-size="${img.width}x${img.height}">
<img src="${v}" alt="${res.title}" />
</a>
<figcaption itemprop="caption description">${res.title}</figcaption>
</figure>
`
}
});
initPhotoSwipeFromDOM(".imgList")
}
}
new info()