簡體   English   中英

jQuery不調整窗口大小調整div的大小

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM