第3集Redis工作原理之双写一致性
document.addEventListener('DOMContentLoaded', function() {
mermaid.initialize({ startOnLoad: true });
// 手动处理mermaid-wrap
const mermaidWraps = document.querySelectorAll('.mermaid-wrap');
mermaidWraps.forEach((wrap, index) => {
const pre = wrap.querySelector('pre.mermaid');
if (pre) {
const id = 'mermaid-' + index;
mermaid.mermaidAPI.render(id, pre.textContent, (svgCode) => {
pre.insertAdjacentHTML('afterend', svgCode);
...
第2集DOM事件继承链
document.addEventListener('DOMContentLoaded', function() {
mermaid.initialize({ startOnLoad: true });
// 手动处理mermaid-wrap
const mermaidWraps = document.querySelectorAll('.mermaid-wrap');
mermaidWraps.forEach((wrap, index) => {
const pre = wrap.querySelector('pre.mermaid');
if (pre) {
const id = 'mermaid-' + index;
mermaid.mermaidAPI.render(id, pre.textContent, (svgCode) => {
pre.insertAdjacentHTML('afterend', svgCode);
...
第1集Event事件
document.addEventListener('DOMContentLoaded', function() {
mermaid.initialize({ startOnLoad: true });
// 手动处理mermaid-wrap
const mermaidWraps = document.querySelectorAll('.mermaid-wrap');
mermaidWraps.forEach((wrap, index) => {
const pre = wrap.querySelector('pre.mermaid');
if (pre) {
const id = 'mermaid-' + index;
mermaid.mermaidAPI.render(id, pre.textContent, (svgCode) => {
pre.insertAdjacentHTML('afterend', svgCode);
...
