为什么不在WordPress中使用jQuery show()函数呢?

时间:2013-10-23 作者:Szántai Ádám

我尝试在wordpress上创建一个快速评论表单,链接如下:enter image description here

我的计划是,当您单击此链接时,您将获得一个带有jquery show()函数的注释表单,您可以在其中在ajax中添加注释
jquery:

 $.noConflict();
 jQuery( ".comment-mezo" ).click(function() {
 jQuery( "#comment-mezo" ).show( "slow" );
});
html:

<a href="#" class="comment-mezo">Quick comment</a>
<div id="comment-mezo" style="display: none">
  <textarea id="comment"></textarea><br>
   <input type="submit">
</div>
此函数在wordpress外部工作(我在jsbin上尝试过),但在内部不工作<为什么<我们知道这一点,谢谢你的Rares P和sri
jquery已加载并工作
id更改没有帮助
演出。加载页面时加载js
我们将其用于脚本加载:

<?php
   function show() {
  wp_enqueue_style( \'style-name\', get_stylesheet_uri() );
  wp_enqueue_script( \'script-name\', get_template_directory_uri() . \'/show.js\', array() );
   }
   add_action( \'wp_enqueue_scripts\', \'show\' );?>

3 个回复
SO网友:Johannes Pille

WordPress运行$.noConflict(); 默认情况下。

您试图再次手动运行它可能会引发

TypeError:无法调用未定义的方法“noConflict”

使用浏览器的JS控制台而不是jsbin。。。

SO网友:Rares P.

1. 尝试查看js是否已加载。尝试添加:alert(“test”);并刷新网站。如果没有显示“test”消息,则表示没有加载js。

下面是加载js的最佳方法:http://codex.wordpress.org/Function_Reference/wp_enqueue_script

2. 如果加载了js,我想您可能有一些错误

为您的浏览器下载Firebug插件。激活它,浏览您的网站,右键单击网站上的某个位置,然后选择“使用Firebug检查此元素”。您将在网站的页脚上看到一个窗口。选择“Console”窗口,您将看到是否有任何Javascript/jQuerry错误。

SO网友:sri

我认为问题可能是因为对所有div元素使用相同的id。尝试为快速注释链接后面的每个div元素提供唯一id。

结束

相关推荐

如何在WordPress中包含调整大小的javascript/jQuery图像?

我不想在我的wordpress主题中包含此脚本,使其根据当前窗口高度调整帖子内所有图像的大小:https://github.com/gutierrezalex/photo-resize我在文本编辑器中创建了一个基本的测试页面,它可以很好地调整图像的大小。然而,当我试图将其应用/包括在我的wordpress主题中时,我根本无法使其发挥作用。