首页/ mobileweb/ 小草少儿编程/ 代码预览

💻 代码预览 · 小草少儿编程

mw_edu · 上传者 小草网络
← 返回详情
小草少儿编程_H5/app.js · 约 1498 字符
1// 小草少儿编程 · 交互逻辑
2document.addEventListener('click', function (e) {
3  var t = e.target.closest('[data-toast]');
4  if (t) { toast(t.getAttribute('data-toast')); }
5  var like = e.target.closest('.wc-like');
6  if (like) {
7    var n = like.textContent.match(/\d+/);
8    if (n) { like.textContent = '❤ ' + (parseInt(n[0]) + 1); like.style.color = '#f97316'; }
9  }
10  var tab = e.target.closest('.stage-tab');
11  if (tab) {
12    var wrap = tab.parentElement;
13    [...wrap.children].forEach(function (x) { x.classList.remove('sel'); });
14    tab.classList.add('sel');
15    var kw = tab.textContent;
16    var cards = document.querySelectorAll('.lesson-card');
17    cards.forEach(function (c) { c.style.display = 'none'; });
18    if (kw === '全部') { cards.forEach(function (c) { c.style.display = 'flex'; }); }
19    else {
20      cards.forEach(function (c) {
21        var diff = c.getAttribute('data-diff') || '';
22        var free = c.getAttribute('data-free');
23        if ((diff && diff.indexOf(kw) >= 0) || (kw === '免费' && free === '1')) { c.style.display = 'flex'; }
24      });
25    }
26  }
27});
28function toast(msg) {
29  var d = document.createElement('div');
30  d.style.cssText = 'position:fixed;left:50%;bottom:110px;transform:translateX(-50%);background:rgba(20,60,55,.85);color:#fff;padding:10px 20px;border-radius:20px;font-size:13px;z-index:999';
31  d.textContent = msg;
32  document.body.appendChild(d);
33  setTimeout(function () { d.remove(); }, 1800);
34}
35