Обновите inner.html перед вызовом функции [duplicate]

Старый поток, который я знаю, но если вы ищете отзывчивое решение, это дополнение jQuery поможет:

  $ (window) .on ('resize', sticky);  $ (document) .bind ("ready", function () {sticky ();});  function sticky () {var fh = $ ("footer"). externalHeight ();  $ ("# push"). css ({'height': fh});  $ ("# wrapper"). css ({'margin-bottom': -fh});  }  

Полное руководство можно найти здесь: https://pixeldesigns.co.uk/blog/responsive-jquery-sticky-footer/

4
задан Mr. Lavalamp 28 November 2014 в 23:37
поделиться

1 ответ

По умолчанию браузер будет ждать окончания текущего потока выполнения и сделать один консолидированный пересчет и перерисовку (поскольку это считается более эффективным, чем выполнение многих перерасчетов и рецензий). Это не указывается в какой-либо спецификации, поэтому браузер может реализовать по своему усмотрению.

Но есть некоторые конкретные операции, которые обычно вызывают переплавку (а иногда и соответствующую перерисовку). Эти операции представляют собой операции (запрашивающие определенные свойства, связанные с положением элементов), которые могут быть выполнены только тогда, когда выполняется точная коррекция. Таким образом, можно вручную инициировать оплату, запросив одно из этих свойств.

Например, запрос свойства .offsetHeight элемента, не являющегося абсолютно позиционирующим, заставит ожидающую оплату в этой точке.

Другие свойства, которые вызывают ожидающий оплату здесь: Какие свойства элемента DOM могут заставить браузер выполнить операцию reflow при изменении?

Другой список свойств здесь : http://gent.ilcore.com/2011/03/how-not-to-trigger-layout-in-webkit.html

7
ответ дан Community 15 August 2018 в 16:28
поделиться
  • 1
    Есть ли список этих свойств где-нибудь? Кроме того, если я правильно вас понимаю, это звучит как В общем, если каждая из этих точек просто изменила свойство «позиции» абсолютно позиционированных элементов, после Точка H будет возникать рефлекс? – Mr. Lavalamp 28 November 2014 в 23:48
  • 2
    @ Mr.Lavalamp - в общем, свойства геометрии, которые зависят от правильной компоновки, будут точными, будут вызывать ожидающий макет, если этот макет требуется для точного отчета об этом свойстве. Например, .offsetHeight является одним из таких свойств. Но абсолютно позиционированные объекты имеют известную позицию без пересчета макета (поскольку их позиция не зависит от макета). – jfriend00 29 November 2014 в 00:00
  • 3
    @ Mr.Lavalamp - см. этот ответ для списка свойств, вызывающих оплату. – jfriend00 29 November 2014 в 00:28
Другие вопросы по тегам:

Похожие вопросы: