Как узнать, включена ли в моей программе функция ARC?

Я создаю проект с поддержкой ARC с помощью мастера проектов Xcode. По сравнению с программой без поддержки ARC отличий не заметил. Есть ли какая-нибудь подсказка, которая может сказать мне, поддерживает ли моя программа ARC?

Я использую XCode 4.2.1 Build 4D502

-. 121 ---948918-

Липкая вложенная навигация Twitter Bootstrap исправляется раньше, чем должна на более коротких страницахЯ реализовал плавающую панель навигации auto -, взятую прямо из документов Bootstrap CSS и JS, на сайте, над которым я работаю. Оно появляется только в одном представлении, но это представление Rails, поэтому оно динамически...

Я реализовал автоматическую -плавающую панель навигации, взятую прямо из документации Bootstrap CSS . и JS на сайте, над которым я работаю. Он появляется только в одном представлении, но это представление Rails, поэтому оно генерируется динамически в зависимости от того, какой объект загружен.

Я обнаружил, что когда содержимое, отображаемое под панелью вложенной навигации, достаточно длинное, поведение панели вложенной навигации работает так, как ожидалось -фиксированный класс вложенной навигации -добавляется прямо в тот момент, когда панель вложенной навигации прокручивается вне поля зрения.

Однако, если страница короче, чем эта, панель вспомогательной навигации будет зафиксирована до того, как она фактически исчезнет из поля зрения, что создает довольно резкий скачок, не говоря уже о том, что вы можете видеть место, где раньше была панель, чего вы не должны уметь видеть.

Я должен добавить, что я использую фиксированную (основную )панель навигации с учетом правильного заполнения тела.

Похоже, проблема связана с возвращаемым значением $('.subnav').offset.top.

Может ли кто-нибудь, кто лучше разбирается в jQuery/JS, помочь диагностировать это,и придумать способ сделать так, чтобы панель вспомогательной навигации фиксировалась только тогда, когда она прокручивается вне поля зрения?

Javascript:

var $win = $(window)
 , $nav = $('.subnav')
 , navTop = $('.subnav').length && $('.subnav').offset().top
 , isFixed = 0
   , $hiddenName = $('.subnav.hide')

processScroll()

$nav.on('click', function () {
  if (!isFixed) setTimeout(function () {  $win.scrollTop($win.scrollTop() - 47) }, 10)
})

$win.on('scroll', processScroll)

function processScroll() {
  var i, scrollTop = $win.scrollTop()
  if (scrollTop >= navTop && !isFixed) {
    isFixed = 1
    $nav.addClass('subnav-fixed')
        $hiddenName.removeClass('hide')
        if (!$('.subnav li').hasClass('active')) {
            $('.subnav li:eq(1)').addClass('active')
        }
  } else if (scrollTop <= navTop && isFixed) {
    isFixed = 0
    $nav.removeClass('subnav-fixed')
        $hiddenName.addClass('hide')
        $('.subnav li').removeClass('active')
  }
}

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

ОБНОВЛЕНИЕ:

Все равно не повезло. navTopпо-прежнему кажется, что он становится короче по мере того, как длина страницы становится короче, что не имеет никакого смысла, поскольку он использует offset().top. Есть ли что-то в том, как работает этот метод, чего я не понимаю?

ОБНОВЛЕНИЕ 2

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

6
задан Community 23 May 2017 в 10:34
поделиться