2010-09-19 16 views
1

Voici la page d'accueil pour le populaire jquery-plugin galleria. J'ai besoin d'insérer le lien de téléchargement dans le coin inférieur droit de l'image active. Maintenant il y a une statistique disponible comme (3/10), qui indique le nombre actuel de la liste. Peut-être quelqu'un a déjà fait cela. Quel est le moyen le plus rapide?Galleria plugin jquery


UPD: en utilisant la idée de gearsdigital j'ai écrit le code:

var gallery = Galleria.get(0); 

gallery.bind(Galleria.IMAGE, function(e) { 
    imgHandle = e.imageTarget; 
    console.log(imgHandle); 
    console.log(imgHandle.attr('href')); 
    //$('.galleria-counter').append('<a href="'+imgHandle.attr('src')+'">Download</a>'); 
}); 

La première ligne du journal apparaît quelque chose comme:

<img width="584" height="438" src="http://....jpg" style="display: block; position: relative; left: 0px; top: -4px; opacity: 1;"> 

Mais comment obtenir le emplacement src, je vois l'erreur qui attr fonction n'est pas dispositi ble.

Répondre

1

Je voudrais essayer d'obtenir la source d'attributs de l'image actuelle en cours et ajoutez cela comme lien.

//Untested. This is just a suggestion :) 
currentImageSource = $('.galleria-image img').attr('src'); 
$('.galleria-counter').append('<a href="'+currentImageSource+'">Download</a>'); 

Mais un lien comme celui-ci va ouvrir l'image séparément et ne pas télécharger ordinaire. Si vous voulez un "vrai" téléchargement, vous devez mettre cette image dans une archive zip.

$('.galleria-counter').append('<a href="'+currentImageSource+'.zip">Download</a>'); 

Cela produira quelque chose comme ça: http://www.example.com/galleria/img/mygreatimage.jpg.zip

Works pour moi:

<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
     <title>Example</title> 
     <script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script> 

     <script type="text/javascript"> 
      $(document).ready(function() { 

       currentImageSource = $('.container img').attr('src'); 
       $('.placeholder').append('<a href="'+currentImageSource+'">Download</a>'); 

      }); 

     </script> 
    </head> 

    <body> 
     <div class="container"> 
      <h2>Get img src</h2> 
      <img src="http://www.duba.at/wp-content/uploads/2007/08/bild_0570000.jpg" witdh="200" height="220"/> 
     </div> 

     <div class="placeholder"> 
      <h2>Append Here</h2> 
     </div> 

    </body> 
</html> 
+0

Regardez la mise à jour, s'il vous plaît. – Ockonal

2

votre obtenir le imgHandle d'un DOMEvent, pas un objet jquery.

Comme attr fait partie de l'objet jQuery dont vous avez besoin pour transférer l'objet dom vers un objet jquery.

gallery.bind(Galleria.IMAGE, function(e) { 
    imgHandle = $(e.imageTarget); //Wrap it here 

    alert(imghandle.attr('href')) 

    //$('.galleria-counter').append('<a href="'+imgHandle.attr('src')+'">Download</a>'); 
});