繁体   English   中英

GreaseMonkey UserScript,用于删除网站的HTML部分

[英]GreaseMonkey UserScript for Remove HTML Section of a website

我安装了“ Greasemonkey”以删除特定站点的部分HTML代码。

我发现要删除的“ jQuery”代码

function removeByClass(className) {
   $("."+className).remove();
}

我试图用“ news_ticker”替换“ ClassName”,但没有成功。

我没有太多的Java语言信息

我要删除的HTML部分代码如下

<div class="news_ticker">

    <div class="title"><a title="Title";</a></div>
    <div class="ticker">
        <div class="wrapper">
            <div class="ticker_feeds">
            <span class="aa_icon">"headline"</span>
            <span class="aa_icon">"headline"</span>
            <span class="aa_icon">"headline"</span>
            <span class="aa_icon">"headline"</span>
            <span class="aa_icon">"headline"</span>
            </div>
        </div>
        <div class="controls"><a class="prev"  title=""></a><a class="pause"  title=""></a><a class="next"  title=""></a></div>
    </div>
</div>

<style>
.static_banner01 {
    clear: both;
    overflow: hidden;
    padding-bottom: 10px;
    position: relative;
}
.banners{
    overflow: hidden; 
    width: 190px; 
    float: right;
}
.m15{
margin-left:14px;
}
.m18{
margin-left:20px;
}
.m10{
margin-left:10px;
}
.w155,
.w155 a{
width:155px !important;
}

.banners a{
    width: 190px;
    height: 80px;
}
.banners.last{
    margin-left:0;
}
</style>

如果要使用jQuery,则需要在用户脚本中包含jQuery。

尝试将// @require http://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js添加到脚本的元数据标头块中。
请参阅有关有关添加诸如jQuery之类的外部库的Wiki油库文章

请记住,您可以使用控制台(例如,在Windows / Firefox上为Ctrl + Shift + K ),以查看错误消息,这些错误消息可以帮助您查找代码问题。

最后,要知道您不必一定要使用jQuery这样简单的操作。 仅凭JavaScript绰绰有余:

function removeByClass(className) {
    var elements = document.getElementsByClassName(className);
    for (var i = 0; i < elements.length; i++) {
        elements[i].outerHTML = "";
    }
}

尝试

<script>   
 function removeByClass(news_ticker) {
       $(".news_ticker").remove();
    }
</script>

或简单地

<script>
      $(".news_ticker").html('');
</script>

阅读来回的更多信息

感谢VP,下面的代码解决了删除标题的第一个问题

$("div").remove(".news_ticker");

现在该站点会自动播放视频,因此我需要从主页中删除视频。 以下代码用于视频部分:

<div class="wrapper">
    <div class="headline"><a title="test" href="test.html">test</a></div>                       
        <div class="img_teaser">
            <span class="LimelightEmbeddedPlayer">  
                <div id="*.mp4"></div>  
                <video id="html5video" dir="ltr" class="video-js vjs-default-skin" autoplay preload="auto" loop width="395" height="296" data-setup='{}'>
                <source src="*.mp4" type='video/mp4' />         
                <p class="vjs-no-js">To view this video please enable JavaScript and consider upgrading your web browser</p>
                </video> 
            </span>
            <p class="caption"><span class="source">test</span> test ... <a title="test" href="test.html">test</a></p>
        </div>  
    </div>

我尝试了以下代码:

不工作

$("span").remove(".LimelightEmbeddedPlayer");

不工作

$("div").remove(".LimelightEmbeddedPlayer");

当没有视频时,站点将插入图像,但是此行将视频和图像一起删除。

$("div").remove(".img_teaser");

经过一些测试后找到解决方案(只需删除视频)

$("div span").remove(".LimelightEmbeddedPlayer");

希望对其他在“ Greasemonkey”中搜索类似“用户脚本”的用户有所帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM