FrozenFrost 发表于 2026-5-10 12:06:56

【油猴脚本】一键删除空间动态

本帖最后由 FrozenFrost 于 2026-5-10 22:11 编辑

    每次回复帖子后,都会在空间里留下一条动态,而最近水贴太多,导致空间里动态越积越多,看着就烦{:4_89:}想删除却发现一次只能删一条,删起来非常折磨,于是我就想着干脆自己写个“一键删除动态”的油猴脚本。折腾了一晚上,终于把脚本写好了。


ps:1.0更新到1.1时,直接删了原本的文件,导致下载次数清空了,本来都快有10次了啊{:4_92:}

--------------------------------------------------------------------------------------------------------------------------------------------------
使用过程:

空间的动态页面右上角新增一键删除按钮

删除过程中会计数

删除后提示完成

--------------------------------------------------------------------------------------------------------------------------------------------------
   因为是第一次写脚本,中间踩了不少坑,记录一下踩坑过程。
    一开始我以为很简单,直接抓取动态列表里的 feedid,然后请求:home.php?mod=spacecp&ac=feed&op=delete。结果发现根本删不掉,刷新页面后动态还在。后来才意识到,我只是把前端 DOM 隐藏了,实际上数据库里的动态根本没删。
    接着我开始研究删除流程,发现 GameMale 的动态删除不是普通跳转,而是 Discuz 的 AJAX 流程:

[*]点击“删除动态”
[*]弹出 AJAX 确认框
[*]提交 form
[*]调用 ajaxpost()
[*]succeedhandle_xxx 回调删除页面元素
    问题也从这里开始越来越多,我最开始是模拟点击“确定”按钮,但一直失败。后来检查弹窗 HTML 才发现,我之前一直在错误地查找 <a> 元素,但“确定”并不是普通 <a> 标签,而是:<strong>确定</strong>。
    后来又踩了一个坑:我以为:form.submit()就能触发删除。结果弹窗直接消失,但动态根本没删。研究后才发现onsubmit="ajaxpost(this.id, ...)"这行代码,说明 Discuz 的真正删除逻辑绑定在 ajaxpost() 上,而原生 submit 并不会触发 onsubmit 里的 AJAX 流程。所以最后改成直接:ajaxpost(form.id, ...)才真正删除成功。
    结果又出现了新的问题:删除第一条动态后,页面会提示:“抱歉,您指定要查看的动态不存在”。原因是,脚本依靠捕获的删除按钮来进行删除操作,虽然第一条动态已经删了,但前端 DOM 没及时刷新,脚本下一轮循环又获取到了同一个删除按钮。而正好,我最开始是只删除了前端没删除后端,直接把最开始的document.getElementById(`feed_${feedid}_li`).remove()代码拿过来用,主动从页面里移除对应动态,就成功解决问题了。

--------------------------------------------------------------------------------------------------------------------------------------------------
1.1更新记录:有人反馈动态没删完就结束了,然后我测试时又踩坑了{:4_100:}一开始想着没检测到按键时,自动刷新网页再检测按键,结果试过后,才发现刷新网页会导致退出脚本。于是改成了等待10秒的倒计时,每秒检测一次,如果还检测不到按键,才结束任务。


--------------------------------------------------------------------------------------------------------------------------------------------------
最后,求求各位给个免费的追随,谢谢啦{:4_91:}





娱乐法师火布偶 发表于 2026-5-10 12:23:21

个人动态可以在设置里面进行显示筛选,把回帖去掉就会减少很多。当然删除还是用脚本很方便,不过添加设置以后就不用频繁删除了

是KUMAyo 发表于 2026-5-10 12:08:21

对于强迫症来说一条一条删真的很烦人,我干脆就懒得删了哈哈哈,不过这个脚本很方便呢

光明哈德 发表于 2026-5-10 12:11:01

本帖最后由 黑暗哈德 于 2026-5-10 12:22 编辑

这个我之前好像发过QQ空间,不过不是我写的,是别人的,删除空间的日志和说说
楼主这个删除论坛的也是很实用了,个人觉得非常棒,尤其是喜欢空间干净点的人来说。

小蓝龙泷泽 发表于 2026-5-10 12:14:06

确实是很有用的脚本了,之前想删发现太多了只能作罢,这下可以一网打尽了

Alicen2233 发表于 2026-5-10 12:28:42

楼主的这个脚本很方便啊,感谢分享惹

Rg26 发表于 2026-5-10 12:40:48

这下可以维持画面整洁了,感觉很舒服

赴约波波 发表于 2026-5-10 12:48:18

你在空间装扮中把那个模块删掉,就什么都没有了

毛茸茸兽兽 发表于 2026-5-10 12:49:28

其实不想看的话,可以在装扮空间里面把这个栏给删掉的(´×ω×`)

万俟 发表于 2026-5-10 13:06:33

正如火老师所说,你可以设置隐私选项,那个更彻底一些

hs90419a 发表于 2026-5-10 13:13:41

很方便實用的小功具
懶人黨福音
火大佬的教學也很實用
十分感謝兩位

crino66666 发表于 2026-5-10 13:17:56

空间装扮里面可以直接设置掉的

凯诺斯 发表于 2026-5-10 13:23:31

很方便的脚本了,我个人属于那种不喜欢展示动态的{:6_169:}

柏芸 发表于 2026-5-10 13:23:47

设置里面可以关上动态要展示的类型的,只不过鼻梁删除确实是比较很方便了

WitchDoctor 发表于 2026-5-10 13:34:54

好有用,正好也没有什么值得保存的动态,直接全删了

miaogungun 发表于 2026-5-10 13:58:29

感谢分享,不过我不怎么发动态,不过对很多用户来说应该很有用吧

4455544 发表于 2026-5-10 14:04:28

{:6_165:}感谢分享惹,被空间背景吸引进来噜,甚至不知道空间这个动态是可以删除的,学到了。

1234qwe 发表于 2026-5-10 14:23:27

可以一键删帖了吗;P,挺便捷的功能。

因本 发表于 2026-5-10 14:42:38

让我回想起了以前一条一条删qq空间说说的痛苦,笑死

Adam123456 发表于 2026-5-10 15:05:56

才注意到,回复帖子居然会在空间有显示吗
页: [1] 2 3
查看完整版本: 【油猴脚本】一键删除空间动态