0

所以我正在使用Disqus Plugin v2.65. 我正在尝试编辑dsq-global-toolbarDisqus 评论顶部的 。

以下标签在disqus-comment-system/comments.php

<div id="disqus_thread">

 <?php if (!get_option('disqus_disable_ssr')): ?>
  <?php
   // if (is_file(TEMPLATEPATH . '/comments.php')) {
   // include(TEMPLATEPATH . '/comments.php');
   // }
  ?>
  <div id="dsq-content">
   <ul id="dsq-comments">

但是在我的网站上有多个标签(disqus-global-toolbar div)似乎动态附加在dsq-content divdsq-comments ul. 这是从哪里来的,我在哪里可以编辑它?任何帮助将不胜感激。

4

2 回答 2

0

我认为它会出现在 disqus.js 的第 3140 行附近

您可以使用此代码等待文档完全加载完成,然后进行更改(客户端):

$(document).ready(function() {
   window.disqus_no_style = true;

   $.getScript('http://sitename.disqus.com/embed.js', function() {
     var loader = setInterval(function() {
       if($('#disqus_thread').html().length) {
         clearInterval(loader);
         disqusReady();
       }
     }, 1000);
});

 function disqusReady() {
 //whatever you can imagine
 }
});

可以删除 window.diqus_no_style 以及 $.getsript 包装器。

那是你要找的吗?


像这样的东西(使用 livequery 而不是 live):

 function disqusReady() {
  $('#dsq-global-toolbar').livequery(function() {
    //$(this) will refer to object   
  });
 }
于 2011-06-30T01:52:03.407 回答
0

不确定你在说什么插件,但如果是 WordPress,我也做过同样的事情。修改 wp-content/plug-ins/disqus-comment-system/comments.php,为 'afterRender' 添加一个事件处理程序(当内容在 DOM 中准备好时触发,但仍然隐藏),例如。第 70 行附近:

config.callbacks.afterRender.push(myFunctionToModifyDisqusOutput);
于 2011-07-07T20:09:38.720 回答