Voici un exemple d'utilisation de jQuery, javascript et css pour gérer les événements de redimensionnement.
(css si votre meilleur pari si vous êtes juste en appliquant des choses sur redimensionner (media queries))
http://jsfiddle.net/CoryDanielson/LAF4G/
css
.footer
{
/* default styles applied first */
}
@media screen and (min-height: 820px) /* height >= 820 px */
{
.footer {
position: absolute;
bottom: 3px;
left: 0px;
/* more styles */
}
}
javascript
window.onresize = function() {
if (window.innerHeight >= 820) { /* ... */ }
if (window.innerWidth <= 1280) { /* ... */ }
}
jQuery
$(window).on('resize', function(){
var win = $(this); //this = window
if (win.height() >= 820) { /* ... */ }
if (win.width() >= 1280) { /* ... */ }
});
Comment puis-je arrêter mon code de redimensionnement de l'exécution de si souvent!?
C'est le premier problème que vous remarquerez lors de la liaison à redimensionner. Le code de redimensionnement est appelé BEAUCOUP de choses lorsque l'utilisateur est en cours de redimensionnement du navigateur manuellement, et peuvent se sentir assez janky.
Pour limiter la fréquence de votre code de redimensionnement est appelé, vous pouvez utiliser l' anti-rebond ou de gaz méthodes à partir du trait de soulignement & lowdash bibliothèques.
-
debounce
uniquement pour exécuter votre code de redimensionnement X nombre de millisecondes après le DERNIER événement de redimensionnement. Ce qui est idéal lorsque vous ne souhaitez appeler votre code de redimensionnement une fois, après que l'utilisateur se fait du redimensionnement du navigateur. C'est bon pour la mise à jour des diagrammes, des graphiques et mises en page qui peut être coûteux de mettre à jour à chaque événement de redimensionnement.
-
throttle
uniquement pour exécuter votre code de redimensionnement de toutes les X millisecondes. Il "manettes" combien de fois le code est appelé. Ce n'est pas utilisée comme souvent avec les événements de redimensionnement, mais il vaut la peine d'être conscient de.
Si vous n'avez pas de souligner ou de lowdash, vous pouvez mettre en œuvre une solution similaire vous-même:
JavaScript/JQuery: $(window).redimensionner comment le feu APRÈS le redimensionnement est terminé?