用JS怎么实现只让网页显示指定DIV?
本帖最后由 zoenbo 于 2021-2-2 09:35 编辑不管用油猴还是插件,或者控制台,有没有办法实现网页加载后删掉body里边除<div class="content"></div>以外的所有内容?求助众大佬大神们~~
<html>
<head>
<title>TEST</title>
</head>
<body>
<div id="top">WELCOME!</div>
<div class="nav">首页|栏目|新闻 </div>
<div class="content">
正文。。。内容。。。CONTENT。。。
</div>
<div class="foot">LOVE U</div>
</body>
</html> 你可以先截取你要的东西出来,然后用dom节点操作body等于你要的东西不就好了吗。。innerhtml吖
PPZ丿皮皮智 发表于 2021-1-31 15:43
你可以先截取你要的东西出来,然后用dom节点操作body等于你要的东西不就好了吗。。innerhtml吖
大佬,我是想这样,就是比如浏览某个网站时,我只想看到他的正文,其他的一概让它不显示,有没法子呢?JS我是一窍不通,不知道咋弄。 油猴会写吧?了解一下js的dom节点操作就可以啦。下面的链接参考一下,学习一下她是怎么删除元素的吧,然后你就可以把你不想要的东西删除了或者把你想要的单独提取出来https://jingyan.baidu.com/article/9158e0007477e6e354122884.html 这是之前没事用来去知乎广告的. 你可以参考一下 .引了一个jquery. 删除节点就是,就是 $(.nav).remove(),$(.foot).remove(), ${#top}.remove() , 要注意的是 插件上的 @match https://www.zhihu.com/* 一定要对应上你指定的网站
// ==UserScript==
// @name zhihuADKiller
// @namespace http://tampermonkey.net/
// @version 1.0
// @require https://libs.baidu.com/jquery/2.1.4/jquery.min.js
// @description知乎去广告
// @AuThor SvenAs
// @match https://www.zhihu.com/*
// @grant none
// ==/UserScript==
(function() {
'use strict';
// 脚本开始前执行一次清除任务
setTimeout(()=> {
delZhihuAd();
}, 1000)
// 监听滚动条滑动事件
window.onscroll = debounce(delZhihuAd,1000)
// 防抖
function debounce(fn, delay) {
var timer = null;
return function() {
if (timer) { //进入该分支语句,说明当前正在一个计时过程中,并且又触发了相同事件。所以要取消当前的计时,重新开始计时timer = null
clearTimeout(timer)
}
timer = setTimeout(fn, delay) // 没有进入分支说明当前并没有在计时,那么就开始一个计时
}
}
// 删除知乎广告
function delZhihuAd() {
$(".Pc-feedAd-container").remove();
$(".Pc-card").remove();
$("img").each(function(){
if ($(this).attr("alt")=="广告"){
$(this).remove();
}
});
}
})(); 却道天凉好个秋 发表于 2021-1-31 16:11
这是之前没事用来去知乎广告的. 你可以参考一下 .引了一个jquery. 删除节点就是,就是 $(.nav).remove(),$(. ...
这个不错,感谢大佬!~
页:
[1]