黄泽雨个人博客
  • 游戏相关
    • 我的世界
  • 生活相关
    • 交通出行
    • 美食相关
  • 电子设备
    • Web相关
    • 硬件相关
    • 系统相关
    • 编程语言
    • 软件相关
    • 游戏相关
      • 我的世界
    • 生活相关
      • 交通出行
      • 美食相关
    • 电子设备
      • Web相关
      • 硬件相关
      • 系统相关
      • 编程语言
      • 软件相关

    游戏相关

    共 1 篇文章
    游戏相关生活相关电子设备
    我的世界
    排序
    发布更新浏览点赞
    Minecraft Forge安装失败解决办法

    Minecraft Forge安装失败解决办法

    问题描述 在安装Forge到下载必要文件步骤时出现错误 “These Libraries failed download. Try again.org.scala-lang:scala-compile...
    我的世界# Minecraft
    2个月前
    270
    没有了
    黄泽雨个人博客
    本站内容源于网络,如侵犯您的权益,请联系站长删除 !
    Copyright © 2018-2025 黄泽雨 | Power by Wordpress | Build by AaronHzy

    友链申请免责声明广告合作关于我们

    手机访问黄泽雨个人博客
    手机访问
       
    网址
    网址文章软件书籍
    (function () { function prettifyLang(raw) { if(!raw) return 'Text'; // "language-plain-text" => "Plain Text" return raw .replace(/^language-?/i, '') .replace(/^lang-?/i, '') .replace(/[^a-z0-9\-_]/ig, '') .replace(/[-_]+/g, ' ') .replace(/\b\w/g, function(c){ return c.toUpperCase(); }) || 'Text'; } function buildCopySVG() { return ''; } function makeToolbarFor(pre) { if (pre.closest('.code-wrapper')) return; // 已处理 var code = pre.querySelector('code'); // 取 class 中的 language-XXX 或 lang-XXX var lang = 'Text'; if (code && code.className) { var m = code.className.match(/(?:language|lang)[-_]?([^\s]+)/i); if (m) lang = prettifyLang(m[0]); else { // 若没有找到,尝试取 code 的 data-lang 属性 lang = code.getAttribute('data-lang') || code.getAttribute('data-language') || 'Text'; lang = prettifyLang(lang); } } // wrap var wrapper = document.createElement('div'); wrapper.className = 'code-wrapper'; pre.parentNode.insertBefore(wrapper, pre); wrapper.appendChild(pre); // toolbar var toolbar = document.createElement('div'); toolbar.className = 'code-toolbar'; var langSpan = document.createElement('span'); langSpan.className = 'code-lang'; langSpan.textContent = lang; var actions = document.createElement('div'); actions.className = 'code-actions'; var copyBtn = document.createElement('button'); copyBtn.type = 'button'; copyBtn.className = 'copy-btn'; copyBtn.setAttribute('aria-label', '复制代码'); copyBtn.innerHTML = buildCopySVG() + '复制'; actions.appendChild(copyBtn); toolbar.appendChild(langSpan); toolbar.appendChild(actions); wrapper.insertBefore(toolbar, pre); // copy handler copyBtn.addEventListener('click', function () { var text = code ? code.innerText : pre.innerText; if (!text) return; // 现代 API if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(text).then(function () { flashCopied(copyBtn); }, function () { fallbackCopy(text, copyBtn); }); } else { fallbackCopy(text, copyBtn); } }); } function fallbackCopy(text, btn) { try { var ta = document.createElement('textarea'); ta.value = text; // prevent scroll jump ta.style.position = 'fixed'; ta.style.left = '-9999px'; document.body.appendChild(ta); ta.select(); var ok = document.execCommand('copy'); document.body.removeChild(ta); if (ok) flashCopied(btn); else alert('复制失败,请手动复制。'); } catch (e) { alert('复制失败,请手动复制。'); } } function flashCopied(btn) { var span = btn.querySelector('.copy-text'); if (!span) return; span.textContent = '已复制'; btn.classList.add('copied'); setTimeout(function () { span.textContent = '复制'; btn.classList.remove('copied'); }, 2000); } // Run on DOM ready if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', function () { document.querySelectorAll('pre').forEach(makeToolbarFor); }); } else { document.querySelectorAll('pre').forEach(makeToolbarFor); } // 如果网站通过 PJAX/章节异步加载内容,建议在对应回调中再次调用 makeToolbarFor })();