javascript - twitter bootstrap modal viser ikke fjernbillede
Jeg bruger Twitter Bootstraps modalvindue til at indlæse et eksternt billede
<a href="assets/500x300.gif" data-target="#image-preview" data-toggle="modal"><img alt="250x150" src="/assets/250x150.gif"></a>
Jeg følger disse dokumenter
Billedet vises ikke korrekt i modalvinduet.
Jeg får i stedet en bunke sammenblandet data -
Hvad sker der? Hvordan kan jeg fikse det?
Svar #1
Ja, jeg havde dette også. Svaret jeg fandt er her.
Jeg oprettede et link som dette:
<a href="gallery/blue.jpg" class="thumbnail img_modal">
//handler for link
$('.img_modal').on('click', function(e) {
e.preventDefault();
$("#modal_img_target").attr("src", this);
$('#modal').modal('show');
});
//and modal code here
<div id="modal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="myModalLabel">Title to go here</h3>
</div>
<div class="modal-body">
<img id="modal_img_target">
</div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
</div>
</div>
Svar #2
Når man bruger href til at angive fjernindhold til en modal, bruger Bootstrap jQuerys load-metode til at hente indholdet og indsætter derefter det hentede indhold i modalens body-element. Kort sagt giver det kun mening, når det fjernindhold (href-værdien) indlæser HTML eller tekst.
Det, du ser, er forventet, da det er det samme, der ville ske, hvis du åbnede gif-filen i en teksteditor og bare indsatte den i en HTML-tag.
For at få det til at fungere, som du ønsker, skal href pege på et HTML-dokument, der indeholder en <img>-tag, som refererer til det billede, du vil have i modal-vinduet.
