twan
twan

Reputation: 2659

$ is not defined lightgallery

For some reason my lightgallery is not working. I added it the same way I always do and all javascript files are included after Jquery.

I get this message in the console:

Uncaught TypeError: $ is not a function
    at product-1.html:433
(anonymous) @ product-1.html:433

Which points to:

<script type="text/javascript">
    $(document).ready(function($) {
        $("#lightgallery").lightGallery();
    });
</script>

All files are correctly loaded, I checked in the network tab.

What could be the problem and how can I fix it? Maybe there is a conflict somewhere? Can I wrap it in a function to make it work?

My js files:

enter image description here

Upvotes: 0

Views: 4240

Answers (4)

london_utku
london_utku

Reputation: 1312

This solves the problem :

<script>
   lightGallery(document.getElementById('lightgallery'));
</script>

Upvotes: 0

Ozal  Zarbaliyev
Ozal Zarbaliyev

Reputation: 638

in the head

<link href="https://cdn.rawgit.com/sachinchoolur/lightgallery.js/master/dist/css/lightgallery.css" rel="stylesheet">

your html content

<div id="lightgallery">
  <a href="img/img1.jpg">
      <img src="img/thumb1.jpg" />
  </a>
  <a href="img/img2.jpg">
      <img src="img/thumb2.jpg" />
  </a>
</div>

in the body include light gallery js files after jquery

<script src="https://cdn.rawgit.com/sachinchoolur/lightgallery.js/master/dist/js/lightgallery.js"></script>
<script src="https://cdn.rawgit.com/sachinchoolur/lg-pager.js/master/dist/lg-pager.js"></script>
<script src="https://cdn.rawgit.com/sachinchoolur/lg-autoplay.js/master/dist/lg-autoplay.js"></script>
<script src="https://cdn.rawgit.com/sachinchoolur/lg-fullscreen.js/master/dist/lg-fullscreen.js"></script>
<script src="https://cdn.rawgit.com/sachinchoolur/lg-zoom.js/master/dist/lg-zoom.js"></script>
<script src="https://cdn.rawgit.com/sachinchoolur/lg-hash.js/master/dist/lg-hash.js"></script>
<script src="https://cdn.rawgit.com/sachinchoolur/lg-share.js/master/dist/lg-share.js"></script>
<script>
   lightGallery(document.getElementById('lightgallery'));
</script>

This really works for me.

Upvotes: 4

skvj
skvj

Reputation: 103

1.Check your maps api js link like https://developers.google.com/maps/api/js this is correct or not 2.Press Ctrl+Shift+Del button at a same time and clear caches and cookies

Upvotes: -1

tslin
tslin

Reputation: 83

Clearing browser cache may help sometimes. Or narrow down your problem by loading one by one starting with jquery.

Upvotes: 0

Related Questions