我正在尝试创建一个按钮来显示/隐藏WordPress中的评论。我当前正在使用以下脚本:
<script>
$(document).ready(function() {
// Get the #comments div
var commentsDiv = $(\'#comment-section\');
// Only do this work if that div isn\'t empty
if (commentsDiv.length) {
// Hide the comments div by default
$(commentsDiv).hide();
// Append a link to show/hide
$(\'<button/>\')
.attr(\'class\', \'toggle-comments\')
.attr(\'href\', \'#\')
.html(\'Show Comments <span class="icon_comment"></span>\')
.insertBefore(commentsDiv);
// when show/hide is clicked
$(\'.toggle-comments\').on(\'click\', function(e) {
e.preventDefault();
// show/hide the div using jquery\'s toggle()
$(commentsDiv).toggle(\'slow\', function() {
// change the text of the anchor
var anchor = $(\'.toggle-comments\');
var anchorText = anchor.html() == \'Show Comments <span class="icon_comment"></span>\' ? \'Hide Comments <span class="icon_comment"></span>\' : \'Show Comments <span class="icon_comment"></span>\';
$(anchor).html(anchorText);
});
});
} // End if commentsDiv.length
});
</script>
现在,就按钮的创建而言,该代码的功能与预期一样(即,它创建了一个标记为“显示注释”的按钮);但是,由脚本创建的按钮不能按预期工作(即,它不显示/隐藏#comment section div)。该脚本在我的测试环境中工作得很好,但当我尝试在WordPress的实时安装中部署它时,就会出现上述行为。下面是一个测试安装,其中包含当前实现的脚本:
http://zyniker13.com/2013/11/20/test-post/. 正如你所见,按钮是存在的,但它什么也不做。
到目前为止,我已经尝试将代码放在页脚中。php,注释。php,并将jQuery与脚本分离(通过在页眉中调用Google的CDN,在页脚和comments.php中调用脚本本身)。无论我把代码放在哪里,我都无法让它正常工作。