如何用油猴脚本禁用网页上的订制光标?

简而言之,某个网站通过css(body/cursor属性)将移到其上的鼠标光标替换成了个很难看的自定义光标,我不知天高地厚,琢磨着整个脚本把它换回来。结果自己折腾了半天没搞定,只会注入新的,没法替换已有的。不愧是既不懂css又不懂js的纯外行。于是只好灰溜溜地跑来请教了。

总之,目标是干掉下面这段:

body {
    cursor: url(***),url(***),auto !important;
}
for (const $sheet of document.styleSheets) {
  for (const $rule of $sheet.cssRules) {
    if ($rule.style?.getPropertyValue('cursor')) {
      $rule.style.removeProperty('cursor');
    }
  }
}
3 个赞

唔,管用。非常感谢

有没有放F12控制台里运行的类似js方法。。。

这可以直接粘贴到控制台运行啊,如果你用的旧版本的浏览器,请使用以下代码

for (const $sheet of document.styleSheets) {
  for (const $rule of $sheet.cssRules) {
    if ($rule.style && $rule.style.getPropertyValue && $rule.style.getPropertyValue('cursor')) {
      $rule.style.removeProperty('cursor');
    }
  }
}

换了好几个网站,按了F12,粘贴进去,都报不同的错,算了,不折腾了,啊哈哈

@future_93 @dodying 不上传一个 greasyfork 脚本分享吗

1 个赞

用户脚本就算了,小书签就行了,按需点击即可
javascript:(function%20()%7Bfor%20(const%20%24sheet%20of%20document.styleSheets)%20%7B%0A%20%20for%20(const%20%24rule%20of%20%24sheet.cssRules)%20%7B%0A%20%20%20%20if%20(%24rule.style%20%26%26%20%24rule.style.getPropertyValue%20%26%26%20%24rule.style.getPropertyValue('cursor'))%20%7B%0A%20%20%20%20%20%20%24rule.style.removeProperty('cursor')%3B%0A%20%20%20%20%7D%0A%20%20%7D%0A%7D%0A%7D)()

1 个赞

不过我是不懂这些人怎么想的,那些个光标啊,又难看又难用…

1 个赞

之前是有点问题,我又改了一下

1 个赞

用 css 行不行?