lightSlider不是一个函数,wordpress

时间:2015-07-21 22:09:31

标签: javascript jquery wordpress

我正在尝试在WordPress中添加lightslider(http://sachinchoolur.github.io/lightslider/index.html)但我收到错误

Uncaught TypeError: jQuery(...).lightSlider is not a function(anonymous function) @ (index):99m.Callbacks.j @ jquery.js?ver=1.11.2:2m.Callbacks.k.fireWith @ jquery.js?ver=1.11.2:2m.extend.ready @ jquery.js?ver=1.11.2:2J @ jquery.js?ver=1.11.2:2

我正在尝试使用他们网站上最简单的例子

HTML

<ul id="lightSlider">
  <li>
      <h3>First Slide</h3>
      <p>Lorem ipsum Cupidatat quis pariatur anim.</p>
  </li>
  <li>
      <h3>Second Slide</h3>
      <p>Lorem ipsum Excepteur amet adipisicing fugiat velit nisi.</p>
  </li>
  <li>
      <h3>Third Slide</h3>
      <p>Lorem ipsum Excepteur amet adipisicing fugiat velit nisi.</p>
  </li>

</ul>

的JavaScript

<script type="text/javascript">
//Also tried to add noConflict() function
//jQuery.noConflict();
jQuery(document).ready(function() {
jQuery("#lightSlider").lightSlider(); 

});
</script>

有人能帮助我吗? 谢谢!

4 个答案:

答案 0 :(得分:2)

我解决了问题。存在的问题是因为某种方式jQuery是在lightSlider.js之后加载的。我不知道这是怎么发生的,我只是先在wp_enqueue_script()中加载jQuery,然后再加载(在css之前)和最后的lightslider.js。

我希望这个答案可以帮到更多人。谢谢你的帮助。

答案 1 :(得分:1)

我有同样的问题,但我已修复它。 只需复制lightslider.js的整个代码并将其过去:

$(document).ready(function(){
   //code of lightslider 

});

答案 2 :(得分:1)

您应该首先将依赖项array('jquery')加载到jQuery中。

示例:

  wp_register_script( 'lightslider-js', get_stylesheet_directory_uri() . '/js/vendor/lightSlider/js/lightslider.min.js', array('jquery'), NULL, true );

答案 3 :(得分:0)

添加延迟的负载

<script src="js/lightslider.js defer"></script>