gpt4 book ai didi

ajax - 同一页面上有多个 DISQUS?

转载 作者:行者123 更新时间:2023-12-01 02:52:34 25 4
gpt4 key购买 nike

我需要在我网站的网页上插入 DISQUS 系统。这很容易。

这里的问题是我需要在同一页面上插入多个 DISQUS 框。

我需要类似 this 的东西.每篇文章和每个段落都有自己的评论块。

有什么建议吗?也许我需要使用某种 API 加载评论通过 AJAX?

我将在我的 WordPress 网站的页面上使用它。

最佳答案

你可以在这里试试这个技巧,它对我有用:http://collaborable.com/blog/disqus-jquery-hack-awesome-ux

不幸的是,除了 via the Wayback Machine 之外,该文章已不再可用。 .

该链接的相关部分如下。显示/隐藏评论:

<div class="comments">
<p class="nocomment">
<a class="nocomment" href="/">Hide comments</a>
</p>
<div class="disqus_thread"></div>
</div>
<p class="comment">
<a class="comment"
href="http://collaborable.com/blog/blog-entry-title"
data-disqus-identifier="blog-entry-id">
<span>Leave a comment</span>
</a>
</p>

...以及相应的 Javascript:
     // DISQUS vars.
var disqus_shortname = 'collaborable';
var disqus_identifier = '';
var disqus_url = '';

// Leave a comment/cancel.
$('.entry a.comment').click(function () {
// Firefox? Bad firefox.
if ($.browser.mozilla && window.disqus_loaded) {
return true;
}

// Init DISQUS.
disqus_identifier = $(this).data('disqus-identifier');
disqus_url = $(this).attr('href');

// DISQUS requires each thread to have the ID #disqus_thread.
$entry = $(this).parents('div.entry');
$('#disqus_thread').removeAttr('id');
$entry.find('div.disqus_thread').attr('id', 'disqus_thread');

// Load DISQUS script, if not already loaded.
if ($entry.find('div.disqus_thread .dsq-reply').length == 0) {
$.getScript('http://' + disqus_shortname + '.disqus.com/embed.js',
function () {
window.disqus_interval =
setInterval('is_disqus_loaded("' + $entry.attr('id') + '")',
200);
}
);
}

// Hide/kill other DISQUS forums.
$entry.find('a.nocomment').trigger('click');
$(this).find('span').addClass('loading');
return false;

});

// Hide/kill all open DISQUS forums.
$('.entry a.nocomment').click(function () {
$('div.comments').slideUp('normal',
function () {
$(this).find('.disqus_thread').empty();
});
$('p.comment').slideDown();
return false;
});

function is_disqus_loaded(entry_id) {
$entry = $('#' + entry_id);
if ($entry.find('div.disqus_thread .dsq-reply').length) {
clearInterval(window.disqus_interval);
window.disqus_loaded = true;
$entry.find('div.comments').slideDown();
$entry.find('a.comment span').removeClass('loading');
$entry.find('p.comment').slideUp();
}
}

关于ajax - 同一页面上有多个 DISQUS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4391957/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com