-
登陆自己的QQ空间 https://qzone.qq.com/
-
进入个人档,点击
修改
基本资料 -
在昵称处填入一个到多个Unicode空格
-
点击最下方的
保存
按钮,此时会弹框提示很抱歉,昵称不能全为空,请重新输入
- 按Chrome
F12
或者Ctrl+Shift+I
快捷键打开开发者工具
窗口 - 进入
Network
标签页,先点击Clear清理一下之前的请求记录 - 这时再点击一次页面中的
保存
按钮,在Network标签页中没有看到发起请求记录
- 按Chrome
-
进入
Elements
标签页按Ctrl+F
查找昵称不能全为空
,定位到如下元素<div class="qz_msgbox_layer_wrap" id="q_Msgbox" style="top: 218px; display: none;"> <span class="qz_msgbox_layer" style="z-index: 10000;" id="mode_tips_v2"> <span class="gtl_ico_hits"></span> 很抱歉,昵称不能全为空,请重新输入 <span class="gtl_end"></span> </span> </div>
-
右键点击
div
元素,勾选Break on
->attribute modifications
-
再次点击页面中的
保存
按钮,此时就会触发提示框div的断点,
开发工具自动跳转到Source
标签页的msgbox.js
文件中的断点
点击左下角的{ }
Pretty print按钮,查看格式化后的js源文件 可以看到断点是停在名为QZFL.widget.msgbox.show
的函数中 按F8
或者Ctrl+\
恢复js执行到完成
再回到Elements
标签页,右键点击div
元素,去除勾选Break on
->attribute modifications
-
回到页面中右键点击昵称输入框,选择
检查
定位到输入框元素所在的位置
往上滚动查看html源码,可以看到基本资料的表单是一个内嵌iframe的html页面
再往下滚动到内嵌html的末尾,可以看到几个引入的js文件,资料页面相关的操作应该就在profile.js
这个文件里面了 -
进入
Sources
标签页,按Ctrl+P
或点击菜单 输入名称profile.js
定位打开js源文件
先点击左下角的{ }
Pretty print按钮,查看格式化后的js源文件
按Ctrl+F
输入查找QZFL.widget.msgbox.show
函数,定位到如下语句在if
语句行号处点击标记断点if (/^\s*$/.test(nick.value)) { TOP.QZFL.widget.msgbox.show("\u5f88\u62b1\u6b49\uff0c\u6635\u79f0\u4e0d\u80fd\u5168\u4e3a\u7a7a\uff0c\u8bf7\u91cd\u65b0\u8f93\u5165", 1, 1E3); return; }
-
回到页面再次点击
保存
按钮,js代码运行暂停在上面标记的断点处
进入Console
标签页,先点击Clear
清理控制台信息
然后输入代码var tmp = nick.value; nick.value = "xxx"
回车执行
切换到Sources
标签页js暂停的断点处,按F10
或Ctrl+`
继续执行js代码到下一处 再回到Console
标签页,输入代码nick.value = tmp
回车执行
切换到Sources
标签页,点击取消if
语句行号处标记的断点
最后按F8
或者Ctrl+\
恢复js执行到完成
Last active
March 25, 2020 14:42
-
-
Save yougg/8f060a1b081efb8fec6c4903e012f2d4 to your computer and use it in GitHub Desktop.
通过QQ空间个人资料修改QQ昵称为空格过程记录
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment