Je souhaite remplacer une image par une autre image lorsqu'un clic est effectué sur un lien. J'ai trois images qui vont chacune à un lien spécifique. Ainsi, par exemple, le lien un a besoin de l'image 1, l'image du lien 2 deux. etc ... Je ai compris comment faire le remplacement:jQuery Image Replacement
$(function() {
$("a#t2").click(function() {
$("#floatleft img").replaceWith('<img src="images/image1.jpg" />');
});
});
<div id="floatleft">
<img src="images/about.jpg" />
</div>
<div id="content">
<ul id="abouttabs">
<li><a id="t1" href="#tab1"><img src="images/menu1.png" alt"menu1" /></a></li>
<li><a id="t2" href="#tab2"><img src="images/menu2.png" alt"menu2" /></a></li>
<li><a id="t3" href="#tab3"><img src="images/menu3.png" alt"menu3" /></a></li>
</ul>
Comme vous pouvez le voir j'ai trois onglets avec ids de t1, t2 et t3. Je voudrais remplacer t1 avec image1, t2 avec image2, et t3 avec image3 lorsque les liens respectifs sont cliqués. Je peux évidemment faire ceci en faisant trois fonctions du code ci-dessus, mais je me demandais s'il y a une manière plus facile de faire ceci avec une fonction each ou quelque chose. De toute évidence, le meilleur moyen serait d'avoir l'image à l'intérieur de l'onglet div, mais je ne peux pas le faire parce qu'il défile et que l'image dans l'onglet le fait défiler aussi bien. Je suppose que je pourrais le faire défiler avec la page, mais je n'aime pas à quoi cela ressemble. Alors je me suis dit que je vais essayer une solution simple jQuery ...
Je pense que vous devriez également convertir .pngs à base64 afin qu'ils se chargent plus rapidement – xxxxxxx
Ces PNGs sont très petites déjà 1.96KB, 1.66KB et 1.45KB. Convertir en base64 les rend réellement plus grands. Vous devriez vérifier PNG Gauntlet http://brh.numbera.com/software/pnggauntlet/ Il compresse mes PNG à ~ 25% de leur taille d'origine. – Nori