我只是想给一个子主题添加一点简单的显示/隐藏jQuery。
$(document).ready(function(){
$("#openbtn").click(function(){
$("#openingtimes").toggle(300);
});
});
我已将上述代码保存在一个名为
buttons.js
.
然后,我在我的functions.php
文件:
<?php
if ( !is_admin() ) {
wp_register_script(\'buttons\',
get_bloginfo(\'stylesheet_directory\') . \'/buttons.js\',
array(\'jquery\'),
\'1.0\' );
wp_enqueue_script(\'buttons\');
}
?>
在输出的源代码中,脚本似乎已正确加载。
<script type=\'text/javascript\' src=\'http://localhost:8888/italina/wp-includes/js/jquery/jquery.js?ver=1.8.3\'></script>
<script type=\'text/javascript\' src=\'http://localhost:8888/italina/wp-content/themes/italina-responsive-child/buttons.js?ver=1.0\'></script>
但是按钮没有作用。
为了更好地衡量,以下是它应该影响的HTML:
<button id="openbtn">Opening Times</button>
<div id="openingtimes" class="headboxes">
<p>
Mondays: Closed<br />
Tues-Fri: Noon-3pm; 5.30pm-10pm<br />
Sat-Sun: Noon-10.30pm<br />
</p>
</div>
非常感谢您的帮助。
最合适的回答,由SO网友:Chip Bennett 整理而成
WordPress中的jQuery脚本require no-conflict wrappers.
而不是这样:
$(document).ready(function(){
$(#somefunction) ...
});
使用此选项:
jQuery(document).ready(function($) {
// $() will work as an alias for jQuery() inside of this function
});
因此,在您的情况下:
jQuery(document).ready(function($) {
$("#openbtn").click(function(){
$("#openingtimes").toggle(300);
});
});