问题描述一下:之前工作网页上的一个提交按钮可以通过键盘T字快捷提交的,今天发现不能用了,请问如何设置实现 网页上一个固定但是会移动的按钮和键盘某个按键的绑定?(油猴,在控制台设置,软件等都可)感谢x30086
更新:
确定了这个
<button type="button" class="xxx"><span>批量通过</span></button>
问题描述一下:之前工作网页上的一个提交按钮可以通过键盘T字快捷提交的,今天发现不能用了,请问如何设置实现 网页上一个固定但是会移动的按钮和键盘某个按键的绑定?(油猴,在控制台设置,软件等都可)感谢x30086
更新:
确定了这个
<button type="button" class="xxx"><span>批量通过</span></button>
onclick
是绑定点击事件,改成click()
试试
approveAllBtn__8kvpE
如果是class的话前面要加.
号
const btn= document.querySelector(".approveAllBtn__8kvpE")
document.addEventListener("keydown", function(event) {
if (event.key === "t") {
btn.click()
}
});
let keysDown = {};
window.onkeydown = function(e) {
keysDown[e.key] = true;
if (keysDown["t"]) {
//do what you want when control and a is pressed for example
//document.querySelector('approveAllBtn___8kvpE').click();
const approveBtn = document.querySelector(".approveAllBtn__8kvpE") document.addEventListener("keydown", function(event) { if (event.key === "t") { approveBtn.click() } });
}
else if( keysDown["g"]){
console.log("thx");
}
}
window.onkeyup = function(e) {
keysDown[e.key] = false;
}
只要执行这段,看看效果
const btn= document.querySelector(".approveAllBtn__8kvpE")
document.addEventListener("keydown", function(event) {
// 加上 toLowerCase() 大写T状态下也生效
if (event.key.toLowerCase() === "t") {
btn.click()
}
});
重新输入这一行看看:
console.log(document.querySelector(".approveAllBtn__8kvpE"))
成功就行,不是大佬哈 ,你新建油猴脚本放进去看看能不能生效
提交按钮是刷新页面后立即出现的吗?
先在// ==UserScript==
// ==UserScript==
之间插入// @run-at document-end
试试
// ==UserScript==
// @run-at document-end
// ==UserScript==
#shadow-root (open或close)
或 <iframe>
里面这个是后台管理页面吧?有敏感数据的话记得打马
试试这段:
function handleKey() {
const btn = document.querySelector(".approveAllBtn__8kvpE")
console.log('\n== ↓ ↓ ↓ ↓ ↓ == \n', btn)
document.addEventListener("keydown", function(event) {
if (event.key.toLowerCase() === "t") {
btn.click()
}
})
}
setTimeout(handleKey, 2000)
@EMANON HI 整个问题的解决过程还是很赞的。建议修改一下原帖里涉及工作的内容就保留着吧。
另外记得给解决问题的同学标记一下解决方案
。