首页
文章
课程
交流群
文档
登录
用脚本在B站的视频上右键,然后点击精准空降菜单
2024-10-07 23:03:06
小程序码
扫一扫在手机上看此文章
文章目录
热门文章
vscode里如果出现中文空格标出黄色突出显示,怎么去掉?
1273
php基础入门课程资料文档课件
1071
vscode插件code runner详细配置说明
769
wordpress主题开发文档资料下载
753
整理下php学员遇到的一些问题
681
php进阶课程文档资料下载
668
fastadmin监听或重写删除编辑按钮事件
640
phpstudy怎么手动安装php8.3.0版本?
581
使用ffmpeg将mp4格式转为m3u8
565
文档:一个案例学会fastadmin插件开发
491
有个粉丝朋友需要在quiker里做这个功能,右键视频,然后点击复制视频地址(精准空降),如下图: ![](https://resource.maoshu.fun/storage/default/20241007/image04c70dbf28f7befa22c8ebe30e233cff2727d68d.png?e=1738190762&token=Ov7mXAv_8azPtTTXXyhh0S5qpDFEhafGpHARTAg2:c-UWjDyo0P6QhEzJSV0b0JCS-OU=) 研究了好久,终于做出,其中关键的一点是,要用 (()=>{})() 这个把核心代码包裹起来,否则就只能执行一次,当然,这是在quiker里,会有重复执行的问题,如果是在油猴脚本或者浏览器插件里,就不需要加这个了。 还有一个重要的代码,那就是触发右键菜单,这是模拟人工点开右键菜单的操作: ```js const contextmenu = new MouseEvent('contextmenu', { view: window, bubbles: true, cancelable: true }); video.dispatchEvent(contextmenu); ``` 看下最终代码: ```js (()=>{ let video = document.querySelector('#bilibili-player div div.bpx-player-primary-area > div.bpx-player-video-area > div.bpx-player-video-perch video'); if(!video){ video = document.querySelector('#bilibili-player div div.bpx-player-primary-area > div.bpx-player-video-area > div.bpx-player-video-perch bwp-video'); } // Create a contextmenu event const contextmenu = new MouseEvent('contextmenu', { view: window, bubbles: true, cancelable: true }); video.dispatchEvent(contextmenu); setTimeout(() => { const mousedown = new MouseEvent('mousedown', { view: window, bubbles: true, cancelable: true }); document.querySelector("#bilibili-player > div > div > div.bpx-player-context-area > ul > li:nth-child(1)").dispatchEvent(mousedown); }, 100); })() ``` 这段代码可以用在油猴脚本里,也可以用在quiker里的执行js里。
铜牌 · 会员
50元/年
解锁全部文章
全部课程8折购买
如果在b站充值了专属会员,可联系猫叔直接开通相同时间的此会员
立即购买
金牌 · 会员
399元/3个月
解锁全部文章
全部课程5折购买
微信一对一答疑
优先解决问题
立即购买