·设为首页收藏本站📧邮箱修改🎁免费下载专区📒收藏夹👽聊天室📱AI智能体
返回列表 发布新帖

JavaScript 修复Discuz!X3.5不能Ctrl+V粘贴图片的问题

63 0
发表于 3 天前 | 查看全部 阅读模式

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
先说原因:如果在Discuz!X3.5的编辑框里面粘贴图片,那么图片会被保存为Base64(data:image/png;base64开头的链接)
但是,Discuz!X3.5在处理的时候会在这个链接的前面加一个HTTP的前缀,像这样:
<img id="aimg_t6Wvt" class="zoom" src="http://data:image/png;base64,图片BASE64" border="0" alt="">

解决办法:

我们只需要通过JavaScript去掉这个HTTP前缀即可
[mw_shl_code=javascript,true]function fixDataUrlImages() {
    // 获取页面中所有的IMG元素
    const images = document.getElementsByTagName('img');
   
    for (let i = 0; i < images.length; i++) {
        const img = images<i>;
        const src = img.getAttribute('src');
        
        // 检查是否是错误格式的data URL
        if (src && src.includes('http://data:image') || src.includes('https://data:image')) {
            // 修复data URL格式
            const fixedSrc = src.replace(/https?:\/\/data:/, 'data:');
            img.setAttribute('src', fixedSrc);
            console.log('修复图片URL:', src, '->', fixedSrc);
        }
    }
}

// 页面加载完成后执行修复
document.addEventListener('DOMContentLoaded', function() {
    fixDataUrlImages();
});

// 如果页面是动态加载的,也可以使用MutationObserver监听DOM变化
const observer = new MutationObserver(function(mutations) {
    mutations.forEach(function(mutation) {
        if (mutation.addedNodes.length) {
            fixDataUrlImages();
        }
    });
});

observer.observe(document.body, {
    childList: true,
    subtree: true
});

// 也可以直接调用修复函数
// fixDataUrlImages();[/mw_shl_code]

使用方法:
把这个JS嵌入Discuz!X3.5的帖子显示页面即可
我要说一句 收起回复

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

最新热评 加载中...
AI智能体
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:216.73.216.11, 116.211.128.13,GMT+8, 2025-10-19 16:04 , Processed in 0.777826 second(s), 74 queries , Gzip On, Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2025 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表