/img/dodola.png

一只小菜鸡的Blog

购物车页面制作教程(包含分页设计)

前言
这篇文章用于2024年蓝旭暑期项目前的培训作业教学,目的是从零开始构建一个购物车页面,以此来熟悉原生前端三件套。o((>ω< ))o

需求分析

功能要求

  • 全选、单选联动逻辑(包括依次选中所有物品时自动勾选全选按钮、勾选全选时勾选所 有单选、取消全选后取消所有选中等)、结算小项总价以及整体总价。

2024吉林省赛补题记录

阿巴阿巴
啊,省赛,怎么两个月过去了才整理题解,这一定是在复习(确信 502c28827d927240463a58b8a49e94c3

GYM地址:2024吉林省赛

题目顺序按照从易到难排序。

数一数

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;

void solve() {
    string s = "Scan the QR code to sign in now.";
    ll cnt = 0;
    for (auto c : s) {
        if (c <= 'z' && c >= 'a')cnt++;
    }
    cout << cnt << endl;
}

int main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    int _ = 1;
    // cin >> _;cin.get();
    while(_--)
        solve();

    return 0;
}

有$x$次获得$1$格能量的机会,$y$次获得$2$格能量的机会,充满一个电池需要$k$格能量,溢出的能量会被浪费,问最多能充满多少电池。

MutationObserver学习+实践

一篇学习 MutationObserver 的文章

今天调整新主题的时候,在重新设计友链样式的时候想保留原本的随机背景颜色,之前数量少的时候似乎不太明显,现在本地测试发觉加载太慢了。于是上网寻找解决思路,找到了 MutationObserver 这个 API,于是就学习了一下//此处记录一下学习过程。

我有不知数量的div元素,每个div元素都有一个class名为friend-link-div,我需要在每个单个的div元素被加载完成的同时,对它设置一个随机的背景颜色。而不是等待整个页面或窗口加载完毕

原本的实现代码:

1
2
3
4
5
6
7
  window.onload=function () {
    const randomHex = () => `rgba(${Math.round(Math.random()*255)}, ${Math.round(Math.random()*255)}, ${Math.round(Math.random()*255)}, 0.5)`;
    var friendArr=document.getElementsByClassName("friend-div"),temp=[];
    for(var i=0;i<friendArr.length;i++){
        friendArr[i].style.background=randomHex();
    }
  }

原本的思路就是简单的在页面加载完成后,获取所有的友链元素,然后给每个元素设置一个随机的背景颜色。但是这样的实现方式有一个问题,就是当友链数量较多的时候,会导致页面加载变慢,因为每次都要重新计算随机颜色,并且在等待本页面加载的时候,友链的背景颜色是白色的,这样会导致页面的视觉体验不好。