【问题标题】:Most concise way to do text replacement on a web page? (using GreaseMonkey)在网页上进行文本替换的最简洁方法? (使用 GreaseMonkey)
【发布时间】:2010-03-01 16:16:03
【问题描述】:

(是的,是的,我不应该使用正则表达式。非常欢迎替代解决方案!)

我正在尝试自定义我经常使用的网页的视图,使用 GreaseMonkey 过滤掉我不想看到的内容。

基本上,页面包含很多看起来像这样的链接:

<a class="foo" href="blah">Text</a>

我希望它们看起来像这样:

Text<a class="foo" href="blah">[?]</a>

这样我就不会不小心点击链接了。

遗憾的是,我的 javascript 知识可以忽略不计,我不知道如何继续。

【问题讨论】:

    标签: javascript css regex greasemonkey


    【解决方案1】:

    这里有一些东西可以尝试

    var links = document.links;
    //or
    //document.getElementsByTagName('a');
    
    for( var i = 0, l = links.length; i < l; i++ ) {
        //ignore links that aren't of class 'foo'
        if( links[i].className != 'foo' ) {
            continue;
        }
        var linkText = links[i].innerHTML;
        links[i].innerHTML = '[?]';
        var textEl = document.createTextNode( linkText );
        links[i].parentNode.insertBefore( textEl, links[i] );
    }
    

    对图像链接做了一些奇怪的事情,但您可能不在乎您的页面是否只是文本链接列表。
    否则,您可能必须在阅读链接 innerHTML 时检查您得到的内容并采取相应措施

    【讨论】:

    • 我只想影响 foo 类的一个链接。
    • 添加了对“foo”类的检查
    猜你喜欢
    • 2014-12-31
    • 2010-10-27
    • 1970-01-01
    • 2011-09-25
    • 2017-03-10
    • 1970-01-01
    • 2019-04-07
    • 1970-01-01
    • 2011-02-25
    相关资源
    最近更新 更多