0

以下は私の JavaScript コードで、誰かが私を助けてくれることを願っています。実際のブラウザウィンドウのサイズを変更するまで、関数 columnConform は起動せず、div のサイズを変更しません。したがって、関数は機能していますが、ウィンドウのサイズ変更イベント ハンドラーをトリガーするまでは機能しません。すべてのページ コンテンツと DOM が読み込まれたときに関数を起動するにはどうすればよいですか? 前もって感謝します!

$(document).ready(function() {

$(function(){
    jumboSlide();
    columnConform();
});

function jumboSlide() {
    $('#jumboSlide').carousel()
}

function resetHeight() {
    $('.row-equal > div').css("min-height", 0);
}

var currentTallest = 0,
    currentRowStart = 0,
    rowDivs = new Array();

function setConformingHeight(element, newHeight) {
    element.css("min-height", newHeight);
}

function getOriginalHeight(element) {
    return (element.data("originalHeight") == undefined) ? (element.outerHeight()) : (element.data("originalHeight"));
}

function columnConform() {
    $('.row-equal > div').each(function() {
        var $element = $(this);
        var topPosition = $element.position().top;
        if (currentRowStart != topPosition) {
            for(currentDiv = 0 ; currentDiv < rowDivs.length ; currentDiv++) setConformingHeight(rowDivs[currentDiv], currentTallest);
            rowDivs.length = 0;
            currentRowStart = topPosition;
            currentTallest = getOriginalHeight($element);
            rowDivs.push($element);
        } else {
            rowDivs.push($element);
            currentTallest = (currentTallest < getOriginalHeight($element)) ? (getOriginalHeight($element)) : (currentTallest);
        }
        for (currentDiv = 0 ; currentDiv < rowDivs.length ; currentDiv++) setConformingHeight(rowDivs[currentDiv], currentTallest);
        });
}

$(window).resize(function(){
    resetHeight();
    columnConform();
});

});
4

2 に答える 2

1

次のように簡単にトリガーできます。

$(window).trigger('resize');
于 2013-05-08T21:47:57.783 に答える
1

columnConform();準備完了関数の最後に呼び出します。

于 2013-05-08T22:05:47.933 に答える