如何用 css 选择器选择长度为 10 的 class

2018-05-04 10:08:45 +08:00
 shonky

最近在弄去广告操作,但基础不怎么行,基本是看网上教程弄的,按网上说的.class~div 并不能去掉广告,我就想能不能通过选择长为 10 的类来去掉广告。 求大佬指点。

5053 次点击
所在节点    CSS
52 条回复
shonky
2018-05-04 10:10:31 +08:00
old9
2018-05-04 10:16:07 +08:00
看起来都是 mYbKXYDA 前缀?
如果确认都是这个前缀的话可以用属性选择符 [attr^=value],[class^=mYbKXYDA] {display:none;}

不过去广告还是交给 adblock ublock 之类浏览器扩展好了
shonky
2018-05-04 10:19:39 +08:00
@old9 不是的,刷新下,类名都会变的。
手机上使用,类似 pwa 那样。因为会在手机上看电视电影什么的。电脑上就会用油猴了。
hourann
2018-05-04 10:26:53 +08:00
一个思路是先选择所有有 class 属性的标签,然后遍历,筛选出长度为 10 的,然后再做一次 select
rabbbit
2018-05-04 10:27:19 +08:00
那个广告的高是不变的吗?试试
*>img[height^="84.375"]
或者按网址
*>img[src^="https://jbokhm.cn"]
shonky
2018-05-04 10:36:06 +08:00
@rabbbit http://www.metvb.com
就这个网站。
大佬,按你的打了一次。试了。没用呢。

var style=".wrap~div,*>img[height^="84.375"]{display:none !important}";

var myStyleElement=document.createElement("style");
myStyleElement.innerHTML=style;
document.querySelector("head").appendChild(myStyleElement);
document.querySelector("html").appendChild(myStyleElement);
shonky
2018-05-04 10:36:32 +08:00
@hourann 谢谢回复,不过现在还是小白,基本操作不会。
whypool
2018-05-04 10:38:39 +08:00
去掉页面的 iframe 能干掉很多广告
把下面代码保存为书签,有广告的时候点一下书签就行

javascript:(function(){%20var%20im%20=%20document.getElementsByTagName('iframe');%20if(im%20&&%20im.length){%20for(var%20i%20=%200;i<im.length;i++){%20var%20p%20=%20im[i];%20p.parentNode.removeChild(p);%20}%20}%20})();
shonky
2018-05-04 10:41:28 +08:00
@whypool 是这样的。我姐喜欢上这网站看电视,我就想用 fapp 做一个 app 出来,把广告都弄掉。
shonky
2018-05-04 10:42:47 +08:00
@whypool 复制粘贴了一波,对这网站还是没用。不过还是谢谢大佬了。
Carseason
2018-05-04 10:51:58 +08:00
根据固定字符来判断,比如你图片的 class=abcd***,则使用[class^="abcd"]来匹配 class 类以 abcd 开头的类,或[class$="abcd"]来匹配以 abcd 结尾的,又或者[class*="abcs"]来匹配 class 里包含 abcd 的元素
如果是一个无固定值蠢随机的你则要用另外的元素来判断位置,或者找出 js 来屏蔽
yu099
2018-05-04 10:54:05 +08:00
cnbeta 也这样的,去不掉
rabbbit
2018-05-04 10:55:42 +08:00
试试
var a = document.querySelector('a>img[src^="https://jbokhm.cn"],a>img[src^="http://dvei.fendoutime.com"]')
a.parentNode.parentNode.removeChild(a.parentNode)
shonky
2018-05-04 10:57:13 +08:00
@Carseason 是随机的。知道 js 了,怎么屏蔽。位置也知道,一直弄.class~div,我把所有的 class 都放了进去,也没用。
shonky
2018-05-04 10:57:39 +08:00
@yu099 我成功弄掉了另一网站类似的广告。
shonky
2018-05-04 10:57:54 +08:00
@rabbbit 好的
Carseason
2018-05-04 11:01:57 +08:00
@shonky 如果只有一个随机类,没别的固定类的话你就得修改 js 了,如果是单独的 js 生成的可以选择屏蔽 js,如果不是可以用位置来确定,比如前一个类为 class a,则用.a>*之类的写法来屏蔽,再或者是看插件是否支持正则的使用,通过正则修改 js 的参数等等,具体看你插件的写法
shonky
2018-05-04 11:05:45 +08:00
@rabbbit 大佬,成功去了首页的广告,但会留下一个关闭的小图标。不过没关系。还有在点进去,又会出现在中间部位的广告,如图 https://i.loli.net/2018/05/04/5aebcd6b8b585.png

,还是按大佬这 js,改动下就可以吗?
shonky
2018-05-04 11:07:03 +08:00
@Carseason Fusion APP,我用的是这个来做 app 的。不是弄插件。谢谢大佬指点。
shonky
2018-05-04 11:10:52 +08:00
@rabbbit https://i.loli.net/2018/05/04/5aebcf032b164.png
大佬,到播放界面 ,上面广告,还有中间广告又都出来了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/451986

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX