隐藏匿名投票结果

您好,有什么方法可以隐藏匿名用户的投票结果吗?我正在创建一个关于考试问题解答的论坛,允许用户为问题选择答案。我不希望我的会员为了看到其他人的答案而给出错误的答案,但我也想阻止匿名用户看到它。

1 个赞

还有一件事,我试图找到一种方法来隐藏匿名回复,但一无所获。有这样的功能吗?

您好,我刚弄明白了。如果有人想尝试,您可以创建一个主题组件并将此添加到头部

<script type="text/discourse-plugin" version="0.8">api.onPageChange(() => {
        if (!Discourse.User.current()) {
            const pollContainers = document.querySelectorAll('.poll');

            pollContainers.forEach(poll => {
                const observer = new MutationObserver((mutations) => {
                    mutations.forEach((mutation) => {
                        if (mutation.type === 'childList') {
                            const resultsButton = poll.querySelector('.toggle-results');
                            if (resultsButton) {
                                resultsButton.remove();
                            }
                        }
                    });
                });

                observer.observe(poll, { attributes: false, childList: true, subtree: true });

                // Remove existing buttons if present
                const existingButton = poll.querySelector('.toggle-results');
                if (existingButton) {
                    existingButton.remove();
                }
            });
        }
    });
</script>

这甚至可以防止在有人投票时显示“结果”按钮。

1 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.