JQuery和Wordpress添加活动类

时间:2013-11-03 04:43:04

标签: jquery css wordpress

我正在尝试通过jquery向我的nav添加一个活动类:

<script type="text/javascript">
            $( '.nav li a' ).each(function() {
                $(this).removeClass('active');
            });
            $('.nav li a').eq(0).addClass("active");
        </script>

我正在使用wordpress,可以看到jquery被定义:

<script type='text/javascript' src='https://artendijen.com/wp-includes/js/jquery/jquery.js?ver=1.10.2'></script>

但是我在控制台日志中收到此错误:

Uncaught TypeError: Property '$' of object [object Object] is not a function

并且活动类未添加到我的导航栏中。

我尝试将此代码放在header.php和page.php中,但上面给出了同样的错误。

这是我的CSS:

<div class="navigation">

    <div class="logo">
        <a href="/"><img src="/wp-content/themes/twentytwelve/images/logo.png" width="275" /></a>
    </div><!--logo-->

    <ul class="nav">
        <li><a href="/about-us">About Us</a></li>
        <li><a href="/shop">Gallery & Shopping</a></li>
        <li><a href="/latest-news">Latest News</a></li>
        <li><a href="/contact-us">Contact Us</a></li>
        <li><a href="/links">Links</a></li>
    </ul>

</div>

我该怎么做才能解决这个问题?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

您提供链接到的jQuery.js文件的底部是jQuery.noConflict(),它确实删除了$别名。

您应该能够通过将代码包装在:

中来解决这个问题
/* allows use of `$` in your code*/
(function($){
 /* wait for page to load before running code*/
  $(function(){
      /* your code here */
  });
})(jQuery);

确保在加载jQuery.js之后放置此代码的脚本标记