Показать сообщение отдельно
  #5 (permalink)  
Старый 10.05.2013, 15:25
_0_ _0_ вне форума
Аспирант
Отправить личное сообщение для _0_ Посмотреть профиль Найти все сообщения от _0_
 
Регистрация: 10.05.2013
Сообщений: 56

Есть такой шаблон в javascript, называется "самоопределяемые функции",
такие функции сами меняют ссылку на себя при первом обращении, например:

function do_once(){
  return _do_once();
}

function _do_once(){
  // сразу заменяем себя
  _do_once=function(){};

  // делаем что-то
  return "все ок";
}

$( function(){do_once();});
// или вроде можно так - $( do_once ), надо попробовать


do_once - это специальная обертка для ссылок, т.к. если передать параметром _do_once как callback то ссылка на первоначальный вариант функции не измениться, а так какое-либо действие будет выполнено гарантированно один раз, но этот способ немного "грязноватый".
В JQuery вроде есть какой-то способ добавить callback на один раз, ключевое слово для поиска по документации - once.

Последний раз редактировалось _0_, 10.05.2013 в 15:28.
Ответить с цитированием