单击css按钮或加载所有注释

时间:2013-11-21 18:28:18

标签: javascript jquery css greasemonkey scriptish

我甚至不知道我的问题是否正确,我的意思是,我不能说它是否是一个不让我的代码工作的css按钮。我想加载此news site的所有评论。

正如您所看到的,在页面底部,打开了最多5条最新评论,并在其下方添加了一个按钮以加载更多评论。这个按钮是我打算自动点击的,我相信它是一个css按钮。

当我尝试点击失败时,我尝试了替代解决方案但没有成功。 隐藏的评论标有:

class="off"

class=off

当我在firebug上删除这个类时,注释会立即显示在页面上,但当我尝试以下操作时,我无法通过jQuery选择或创建它:

$("li").removeClass("off");

- 这是我的失败代码,似乎从未发现元素等待:

// ==UserScript==
// @name        globo coments
// @description globo coments
// @include     http://*.globo.com/*.html
// @require     http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
// @require     https://gist.github.com/raw/2625891/waitForKeyElements.js
// @version     1
// @grant       GM_addStyle
// ==/UserScript==

function maisComents(jNode) {
        alert('???');
}

waitForKeyElements ("#glb-materia .widget widget-comentarios #boxComentarios .glbComentarios-lista glbComentarios-lista-recentes button .glbComentarios-botao-mais", maisComents);

- 在firebug的脚本选项卡中,您可以看到:

<div id='boxComentarios'></div>
    <script type="text/javascript">
        glb.runner.push('comentarios', function(global, $) {
        var articleUrl = 'http://ego.globo.com/biquini/noticia/2013/11/marina-elali-exibe-boa-forma-de-biquini.html',
        slug = articleUrl.split('/').pop().split('.').shift(),
        hash = global.sha1(slug);
        $('#boxComentarios').comentarios({
           'uri': '/jornalismo/ego/biquini',
           'url': articleUrl,
           'titulo': slug,
           'idExterno': hash,
           'exibeTeaserComentarios': true,
           'qtdComentariosNoTeaser': 5,                 
           'botaoComentario': {'topo': '.listar-comentarios-topo'}
    });
});
</script>
</div> 

在这一行中,设置了评论数量

'qtdComentariosNoTeaser': 5,    

- 我相信有很多方法可以加载所有评论,但我找不到任何解决方案。 你能帮助我吗?

2 个答案:

答案 0 :(得分:0)

您可以获取与按钮的类名匹配的所有元素并存储在数组中。然后你可以直接引用数组中的索引并单击。这可能不是最好的方法,但它确实单击了按钮。希望它有所帮助。

Javascript点击加载更多评论按钮:

var arrEle = document.getElementsByClassName('glbComentarios-botao-mais');
arrEle[0].click();

按要求提供jQuery解决方案:

$(".glbComentarios-botao-mais").click();

答案 1 :(得分:0)

单击按钮,您将无法实现所需。有一些“隐藏的评论”,单击按钮一次确实显示了初始隐藏的评论,但是额外的点击进行了AJAX调用以加载更多评论,调用:

http://comentarios.globo.com/comentarios/%40%40jornalismo%40%40ego%40%40biquini/bb7ac85e446f9d568d9047886db0f0665b1753a1/http%3A%40%40%40%40ego.globo.com%40%40biquini%40%40noticia%40%402013%40%4011%40%40marina-elali-exibe-boa-forma-de-biquini.html/shorturl/marina-elali-exibe-boa-forma-de-biquini/2.json

3.json,4.json等

您是否尝试删除行'qtdComentariosNoTeaser': 5,或将其设置为非常高的数字,例如9999