Ceux qui ont utilisé Arcgis doivent avoir une mémoire profonde de l'effet de store enrouleur dans Arcmap et souhaitent le déplacer vers leur propre système WebGIS. Avec la même idée, j'aime aussi ce store enrouleur relativement cool, j'ai fait quelques recherches. sur l'effet, et voilà, laissez-moi rapporter les résultats à tout le monde
En voyant cet effet, ton poulet a bougé un peu ? Héhé, ne t'inquiète pas, écoute-moi doucement.
Tout d’abord, le conteneur. Utilisez deux DIV pour afficher des images de deux périodes différentes. Définissez ensuite les styles des deux conteneurs, code :
#after{ position: absolute; top: 0px; left: 0px; background-image: url(../images/24.jpg); width: 940px; height: 529px; background-repeat: no-repeat; } #before{ position: absolute; top: 0px; left: 0px; border-right: 3px solid #f00; background-image: url(../images/23.jpg); width: 433px; height: 529px; background-repeat: no-repeat; max-width: 940px; }
De cette façon, l'image est affichée sur le Web.
Ensuite, implémentez l’effet de volet roulant. Pour mettre en place un volet roulant, le plus important est de définir la largeur d'avant. Comment la définir est d'obtenir la position de la souris. Le code est le suivant :
function RollImage(evt){ var x=evt.pageX; console.log(x); $("#before").css("width",x+"px"); } /script>
De cette façon, l'effet des stores enrouleurs est obtenu. Le code source est le suivant :
style.css
.beforeafter{ width: 940px; height: 529px; } #after{ position: absolute; top: 0px; left: 0px; background-image: url(../images/24.jpg); width: 940px; height: 529px; background-repeat: no-repeat; } #before{ position: absolute; top: 0px; left: 0px; border-right: 3px solid #f00; background-image: url(../images/23.jpg); width: 433px; height: 529px; background-repeat: no-repeat; max-width: 940px; }
test.html
<html lang="zh-CN" xmlns="http://www.w3.org/1999/xhtml"><head> <title>日本地震灾区前后对比</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="Content-Language" content="zh-CN"> <link href="css/roll.css" type="text/css" rel="stylesheet"> <script src="../jquery-1.8.3.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> function RollImage(evt){ <strong>var x=evt.pageX; $("#before").css("width",x+"px");</strong> } </script> </head> <body> <div class="beforeafter" onmousemove="RollImage(event)"> <div id="after"></div> <div id="before"> </div> </div> </body> </html>