Greasy Fork is available in English.
无需登陆,复制你选中的任何来自CSDN页面的字符串/文本/代码(请确保你在页面上能看到这些代码!);Copy Everything from CSDN that you selected without login in.
// ==UserScript==// @name CSDN免登陆复制代码/Copy EveryThing you selected// @namespace http://tampermonkey.net/// @version 0.6// @description 无需登陆,复制你选中的任何来自CSDN页面的字符串/文本/代码(请确保你在页面上能看到这些代码!);Copy Everything from CSDN that you selected without login in.// @author limbopro// @license MIT// @match https://*.csdn.net/*// @icon https://www.google.com/s2/favicons?sz=64&domain=csdn.net// @grant none// @run-at document-end// ==/UserScript==function loginPage_remove() { // 让CSDN 所有元素标签可复制并隐藏登陆框const styleNew = document.createElement('style')styleNew.id = '####csdn'styleNew.innerHTML = "* {user-select: auto !important;} .copysuccess {background:green !important;color:white !important;} .copy-cdsn {z-index:115454;border:0; position:fixed;right:0px; font-size:medium; font-weight:bolder;color:wheat;padding:10px; top:20%; box-shadow:6px 3px 2px 1px rgba(0, 0, 255, .2);background:blueviolet;} .passport-login-container, div.passport-login-mark {display:none! important ; pointer-events:none !important ; opacity:0 !important;}"document.querySelectorAll('head')[0].appendChild(styleNew)}function isCopybutton_newAndListen() { // 页面右上角复制代码按钮const button = document.createElement('button')button.className = 'copy-cdsn'button.id = 'copy-cdsn'button.textContent = '复制代码!'document.body.appendChild(button)setTimeout(() => { // 添加点击监听事件document.querySelector('.copy-cdsn').addEventListener('click', function () {const selector_csdn = window.getSelection().toString() // 选中的内容转为字符串 stringif (selector_csdn == null || selector_csdn == '') { alert("先用(鼠标选中想要复制的代码/文本/段落),再点击页面右侧的(复制代码)按钮!") }else {const textarea = document.createElement('textarea') // 创建 textarea 元素 并将选中内容填充进去textarea.id = '####csdn_code'document.body.appendChild(textarea)textarea.value = selector_csdntextarea.select();document.execCommand('copy', true); // 执行复制document.querySelector('.copy-cdsn').classList.add('copysuccess') // 复制成功提醒document.querySelector('.copy-cdsn').textContent = '复制成功!'setTimeout(() => { // ↩️按钮恢复原状document.querySelector('.copy-cdsn').classList.remove('copysuccess')document.querySelector('.copy-cdsn').textContent = '复制代码!'}, 4000)if (document.getElementById('####csdn_code')) { // 删除刚刚创建的 textarea 元素document.getElementById('####csdn_code').remove()}}})}, 1500)}loginPage_remove()isCopybutton_newAndListen()