высота не устанавливается, если я не "проверю страницу" - PullRequest
0 голосов
/ 31 января 2012

По какой-то причине это работает, когда страница сначала загружается, и когда размер контента изменяется, она будет запускать «matchColumns», только если я выполню «элемент проверки» в chrome. Кажется, не может понять, почему это происходит, вместо того, чтобы каждый раз менять контент. Здесь - сайт, с которым я работаю. Заранее спасибо.

var $j = jQuery.noConflict();

$j(document).ready(function() {
    MC.general.init();
    MC.homeSlider.init();
    MC.homeMap.init();
    $j(window).resize(function() {
      $j('#layer-base, #layer-top, .exposed, ').matchColumns();
    }); 
});

$j.fn.matchColumns = function(){
    var height_tar = $j(document).height();
    $j(this).css({"height": (height_tar ) + "px"});
}; // matchColumns

1 Ответ

1 голос
/ 31 января 2012

При проверке открывается веб-инспектор в Chrome / Safari или Firebug в Firefox, который занимает некоторую часть области просмотра и запускает событие изменения размера окна (даже если окно не изменило размер, насколько это касается ОС, из у вашего документа есть точка зрения).

Я бы добавил вызов к matchColumns, который запускается сразу, в дополнение к вызовам, которые запускаются при изменении размера. Так как:

$j(window).resize(function() {
  $j('#layer-base, #layer-top, .exposed, ').matchColumns();
}); 
$j('#layer-base, #layer-top, .exposed, ').matchColumns();

Или, что еще лучше, выделите эту строку в функцию.

...