我没学过 js,但是我想写一个油猴脚本。
功能是在论坛这些网站放一个很多回复语的选项,选中哪个回复语(比如,谢谢楼主。但是又不是只有这一句)就会填好在回复框,然后点击发布就可以了。
请问一下,写这样的脚本难吗。谢谢大家
感觉不是特别难,匹配网站,添加 dom,dom 按钮添加触发,触发后根据 id 给输入框写入对应内容。
不难
1. 找到回复正文的 class
2. 绑定事件,例如点击时弹出弹窗是否引用该回复
3. 如果是找到回复的输入框把内容复制进去
切入点挺好,从新手入门到中阶开发,能一步步优化上去,新手做不是很难(如果有其他编程语言基础的话),不然可能需要了解的东西还是挺多的,不要用 jQuery 之类的东西,可以直接搞原生。
个人还是挺推荐这样的通过有目的实践的学习方法,而且难度不是很高。
(() => {
let list = ['学习了', '谢谢楼主', '紫薯布丁'];
let c = t => document.createElement(t);
let s = t => document.querySelector(t);
let ta = s('textarea');
if(!ta) return;
let box = c('div');
box.style.position = 'absolute';
box.style.display = 'none';
box.style.background = 'rgba(230, 230, 230, 0.4)';
box.style.borderRadius = '0.2em';
for (let i of list) {
let p = c('p');
p.innerText = i;
p.style.color = '/> p.style.margin = '0.5em 1em';
p.style.cursor = 'pointer';
p.onclick = () => {
ta.value = ta.value + i;
box.style.display = 'none';
};
box.appendChild(p);
}
document.body.appendChild(box);
ta.oncontextmenu = e => {
e.preventDefault();
console.log(e);
let { pageX, pageY } = e;
box.style.top = pageY + 'px';
box.style.left = pageX + 'px';
box.style.display = 'block';
}
})();
// 根据楼主的描述写了一个
// 右键点击文本框的时候可以触发
大老厉害