[英]JQuery/Javascript for Div auto resizing when browser/window resize
[英]JQuery not resizing div on window resize
因此,我有一個JQuery函數,該函數旨在使列高相同。 它會檢查屏幕尺寸,如果它在中等尺寸的設備或更大的設備上,它將把列的大小調整為相同的高度。 該功能的這一部分效果很好。 但是,如果將其調整為移動尺寸(或1025px以下的任何尺寸),則高度不會重置為原始尺寸,而是保持增加的尺寸。 如果從小屏幕開始,它將正確顯示,直到將其調整為大屏幕,然后再次調整為小屏幕(然后發生與上述相同的問題)。
這是代碼!
$(document).ready(function(){
matchColHeight('.intro-pic', '.intro-desc-container');
$(window).resize(function(){
matchColHeight('.intro-pic', '.intro-desc-container');
});
});
function matchColHeight(tallColumn, shortColumn){
shortOriginalHeight = $(shortColumn).height();
if (window.matchMedia('(min-width: 1025px)').matches) {
height = $(tallColumn).height();
$(shortColumn).css({
'height': height + 'px'
});
}
else{
$(shortColumn).css({
'height': shortOriginalHeight + 'px'
});
}
}
注意:我也嘗試過使用以下功能,但存在相同的問題:
function matchColHeight(tallColumn, shortColumn){
shortOriginalHeight = $(shortColumn).height();
screenSize = $(window).width();
if (screenSize > 1025){
height = $(tallColumn).height();
$(shortColumn).css({
'height': height + 'px'
});
}
else{
$(shortColumn).css({
'height': shortOriginalHeight + 'px'
});
}
}
提前致謝!
通過將函數更改為以下內容最終解決了我的問題:
function matchColHeight(tallColumn, shortColumn){
if (window.matchMedia('(min-width: 40em)').matches) {
height = $(tallColumn).height();
$(shortColumn).css({
'height': height + 'px'
});
}
else{
$(shortColumn).removeAttr('style');
}
}
我沒有存儲原始高度並恢復為原始高度,而是在不需要時刪除了修改后的高度。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.