2013-12-24 1 views
0

Я настраиваю вызов функции JavaScript на странице загрузки:метод Javascript вызов с новым значением

$('.myMenu').affix({ 
     offset: { 
      top: value 
     } 
    }); 

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

$(window).resize(function() { 
     $('.myMenu').affix({ 
      offset: { 
       top: value 
      } 
     }); 
    }); 

$(document).ready(function() { 
     $('.myMenu').affix({ 
      offset: { 
       top: value 
      } 
     }); 
    }); 

Почему это происходит? может быть, кто-то может объяснить? окно изменения размера запускающее на окнах размера, я убедиться, что с помощью alert функции

Я использую affix(), который находится в твиттере бутстраповской 3.0, а также у меня есть такая же проблема с http://github.com/davist11/jQuery-One-Page-Nav плагиным

$('.mainNav').onePageNav({ 
     currentClass: 'active', 
     scrollOffset: offsetValue 
    }); 

onePageNav() не применяя новый offsetValue, если я сделаю onePageNav() на размер экрана, как указано выше в случае affix().

+0

Где вы его назвали? Как вы это называете. Поместите весь код. – Ani

ответ

1

Большинство плагинов предоставляют отдельные методы для первоначального прикрепления к элементу (с начальными настройками) и последующие изменения этих настроек.

Точные методы для последних зависят от того, как автор плагина написал код, и действительно ли будут замечены изменения настроек. Если он (а) следовал конвенции JQuery UI это будет:

$('.myMenu').affix('options', { top: value }); 

Чтобы получить лучший ответ, обеспечить связь с конкретной «проставляют» плагин вы используете, или проверить его документацию.

+0

Должно ли это '$ ('. MyMenu'). Affix ('options', {offset: {top: value}});'? – sreginogemoh

+0

@sreginogemoh no, плохая новость в том, что плагин Bootstrap affix не имеет метода API для изменения параметров. Для неприятного взлома можно потенциально изменить '$ (element) .data ('bs.affix'). Options.offset' – Alnitak

+0

и что abut' http: // github.com/davist11/jQuery-One-Page-Nav' есть ли API для изменения параметров? – sreginogemoh