function myResizeFunction() {
...
}
$(function() {
$(window).resize(myResizeFunction).trigger('resize');
});
Bu, yeniden boyutlandırma işleyicinizin pencere yeniden boyutlandırması ve belge hazır olduğunda tetiklemesine neden olur. Tabii ki, .trigger('resize')
bunun yerine sayfa yüklemede çalıştırmak istiyorsanız yeniden boyutlandırma işleyicinizi belge hazır işleyicinin dışına ekleyebilirsiniz .
GÜNCELLEME : Başka bir üçüncü taraf kitaplığını kullanmak istemiyorsanız başka bir seçenek daha.
Bu teknik, hedef öğenize belirli bir sınıf ekler, böylece stili yalnızca CSS üzerinden kontrol etme (ve satır içi stilden kaçınma) avantajına sahip olursunuz.
Ayrıca sınıfın her bir yeniden boyutlandırmada değil, yalnızca gerçek eşik noktası tetiklendiğinde eklenmesini veya kaldırılmasını sağlar. Yalnızca bir eşik noktasında ateşlenir: yükseklik <= 818'den> 819'a değiştiğinde veya tersi olduğunda ve her bölge içinde birden fazla kez olmadığında. Genişlikteki herhangi bir değişiklikle ilgili değildir .
function myResizeFunction() {
var $window = $(this),
height = Math.ceil($window.height()),
previousHeight = $window.data('previousHeight');
if (height !== previousHeight) {
if (height < 819)
previousHeight >= 819 && $('.footer').removeClass('hgte819');
else if (!previousHeight || previousHeight < 819)
$('.footer').addClass('hgte819');
$window.data('previousHeight', height);
}
}
$(function() {
$(window).on('resize.optionalNamespace', myResizeFunction).triggerHandler('resize.optionalNamespace');
});
Örnek olarak, bazı CSS kurallarınız olarak aşağıdakilere sahip olabilirsiniz:
.footer {
bottom: auto;
left: auto;
position: static;
}
.footer.hgte819 {
bottom: 3px;
left: 0;
position: absolute;
}
$(window).resize(function(){...})