jQuery Lightbox w/CodeIgniter ontbrekende afbeeldingen

Ik probeer een jQuery Lightbox-plug-in te implementeren in een portfoliosite die is gebouwd op CodeIgniter. Ik kan de lightbox laten laden en tonen wanneer op een afbeelding wordt geklikt. De afbeeldingen die moeten worden weergegeven (zoals sluiten, volgende, vorige, enzovoort) worden echter niet in de lichtbak geladen.

<script src="<?php echo base_url(); ?>js/libs/jquery-1.6.2.js"></script>
<script src="<?php echo base_url(); ?>js/jquery.lightbox-0.5.min.js"></script>
<script type="text/javascript">
    $(function() {
      $('a.lightbox').lightBox();//Select all links with lightbox class
    });
</script>

Ik heb ook geprobeerd het bestandspad voor de afbeeldingen in het .js-bestand te wijzigen, maar er worden gebroken koppelingen geretourneerd. Is er een soort van url-helper die JavaScript in de goede richting wijst of zit ik in de verkeerde map? Ik heb root-, js-map (dezelfde map als het script) en de map views geprobeerd.

2

4 antwoord

De eenvoudigste manier is om Firebug uit te voeren en op het tabblad Net te zoeken naar de afbeeldingen die niet worden gevonden, corrigeer de paden door de bestanden daar naartoe te verplaatsen of de paden in de code te wijzigen.

Ik neem aan dat je het lightbox CSS-bestand hebt opgenomen (ik zie het niet in je code hierboven)

Je kunt ook de locaties voor de vereiste afbeeldingen opgeven wanneer je de lightbox op deze manier oproept:

<script type="text/javascript">
    $(function() {
      $('a.lightbox').lightBox({
         'imageLoading': "<?php echo site_url(); ?>images/lightbox-ico-loading.gif",
         'imageBtnClose': "<?php echo site_url(); ?>images/lightbox-btn-close.gif",
         'imageBtnPrev': "<?php echo site_url(); ?>images/lightbox-btn-prev.gif",
         'imageBtnNext': "<?php echo site_url(); ?>images/lightbox-btn-next.gif",
         'imageBlank': "<?php echo site_url(); ?>images/lightbox-blank.gif"
      });//Select all links with lightbox class
    });
</script>

de variabelen hiervoor worden hier weergegeven.

1
toegevoegd

Wel, het lijkt erop dat u uw URL goed opbouwt. Volgens uw code bevindt de JS-map zich op hetzelfde niveau van de toepassingsmap. Zorg dat dit de juiste weg is voor jou!

  • TOEPASSING ( <? PHP echo base_url ();?> toepassing/)
  • SYSTEM
  • JS ( <? PHP echo base_url ();?> js/);
  • index.php

U kunt ook controleren of een .htaccess toegang tot die map verhindert (IIRC het pakket wordt geleverd met een "Deny from all" .htaccess-regel, maar in de toepassingsmap. Als u een aangepaste, gewijzigde .htaccess heeft die mogelijk voorkomen dat de afbeeldingen worden weergegeven).

And, as noted by Steve Lewis, check in Firebug, or in the Dev Tools of IE or Chrome (usually F12 on the keyboard) if the NET tab, or something analogue, shows you a 404 for the resources.
Did you try viewing the source and clicking on the script links? Did you try accessing your images directly in your browser?

0
toegevoegd

Same problem here, found the solution in this forum: http://forums.modx.com/index.php?topic=44367.0

Het CSS-bestand aanpassen deed niets, maar ik merkte dat het "sluiten"   GIF die ik miste, was niet gespecificeerd in de stock lightbox.css   bestand of een van beide. Dit bracht me ertoe om te kijken naar lightbox_lang_en.js, waar ik   ontdekte dat de paden naar de afbeeldingen geen leidende schuine strepen hadden ,   de browser laten zoeken naar hen op de verkeerde plaats. Ik voegde toonaangevende toe   slashes en het begon te werken. Hier is mijn aangepast   lightbox_lang_en.js:

0
toegevoegd

probleem is dat knoopbeeldpaden worden verbroken. oplossing is edit lightbox.js kernbestand en fixeer afbeelding. fix achtergrond-beeldeigenschappen voor (lb-next, lb-prev, lb-close, lb-load) klassen. in mijn geval heb ik er een vrijgemaakt ../

0
toegevoegd
Het bewerken van de kernbestanden klinkt eigenlijk nooit als een goed idee!
toegevoegd de auteur dferenc, de bron
ja ik ben het met je eens. als niet de eigenschap background-image overschrijven met JavaScript zal werken.
toegevoegd de auteur tharaka, de bron