Javascript div隐藏不起作用
我想隐藏my wordpress blog上的评论表单(虽然页面不是wordpress博客,我只是收到帖子)。Javascript div隐藏不起作用
如果我有意见,那么隐藏/显示将适用于表单和评论。如果我没有评论该功能不起作用,我不知道为什么。
如果有人可以帮助,我可以上传显示文章(blog.php)和wordpress主题内生成的评论页面(comments.php)的php文件。
编辑: PHP代码被删除与错误无关。相关的HTML代码如下:
...
<body class="home blog logged-in custom-background">
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery("#content img").addClass("imageSeven");
});
</script>
...
<a id="replytitle" href="javascript:togglecommentform('replyform17');">Show Comment Form</a>
<div id="replyform17" style="display:block;">
...
</div>
...
<a id="replytitle" href="javascript:togglecommentform('replyform6');">Show Comment Form</a>
<div id="replyform6" style="display:block;">
...
</div>
...
你有一个问题,即输出(查看源代码)有权在顶部有一个参考的jQuery:
<body class="home blog logged-in custom-background">
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery("#content img").addClass("imageSeven");
});
</script>
这方面的一些要点:
- 因为你没有在任何地方包含对jQuery的引用 - 这会导致错误,这意味着即使你的其他JavaScript有效,它也将无法运行。
- ,如果你把所有你的JavaScript页面的底部,你不需要
jQuery(document).ready...
(只是</body>
结束标记前。)
你的主要问题似乎是一个混乱的代码结构。基于你有(没有进攻)乱码,我会建议使用库如jQuery:
第1步:删除所有你在一个页面有JavaScript的。
从外表看,这只是意味着<script>
块正好在<body>
标记下。
第2步:替换这些<a>
开始标记:
<a id="replytitle" href="javascript:togglecommentform('replyform17');">
<a id="replytitle" href="javascript:togglecommentform('replyform6');">
有了这些:
<a id="replytitle17" href="#">
<a id="replytitle6" href="#">
步骤3:就在</body>
标记之前,包括以下内容:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
var images = $('#content img');
if (images.length > 0) { images.addClass("imageSeven"); }
$('#replytitle17').click(function() { $('#replyform17').toggle(); });
$('#replytitle6').click(function() { $('#replyform6').toggle(); });
</script>
这应该在jQuery中实现您的页面所具有的一切。
+1,我原以为jQuery本来就包含在WP安装中 – 2012-02-25 12:33:40
感谢@beardtwizzle,我会看看这个。你提到的JQuery是由我在整个网站使用的wordpress主题安置的,因为我在开发过程中不是经验丰富的专家,所以我没有意识到存在一个问题。 – Stefan 2012-02-25 12:34:32
@Stefan - 检查这一点的最好方法是使用Firefox/Chrome等浏览器并检查其“Web Developer控制台” - 如果你这样做,你会看到一些红色的文字,如“jQuery未定义” – isNaN1247 2012-02-25 12:37:34
你可以在这里发布你的代码而不是链接(这符合预期的SO问题格式)。如果它的JavaScript导致你的问题,那么我们只需要(加上有问题的HTML) – isNaN1247 2012-02-25 12:03:49
而且意味着当网站的固定/修改问题*对后续访问者仍然有用时。顺便提一句,PHP与JavaScript无关(大部分情况下),因为JavaScript是客户端,并且工作在DOM上,从浏览器看到的HTML中呈现。请在这里发布您的相关呈现HTML和JavaScript。 – 2012-02-25 12:04:58
我已经添加snippets @beardtwizzle – Stefan 2012-02-25 12:13:41