как вызвать функцию самовызова - PullRequest
2 голосов
/ 12 марта 2012

Я пытаюсь вызвать функцию, вызывающую себя так:

  (function fullscreen(){
    alert("test");
  })();
  $(window).resize(function() {
    fullscreen();
  });

это работает только один раз. нет ответа на window.resize спасибо

Ответы [ 2 ]

3 голосов
/ 12 марта 2012

То, что вы делаете, не имеет смысла. Почему fullscreen вызывает себя? Просто сделай это:

function fullscreen() {
  alert("test");
}

fullscreen();

$(window).resize(fullscreen);
// or
$(window).resize(function () {
    fullscreen();
});
2 голосов
/ 12 марта 2012

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

(На самом деле это не так в Internet Explorer, но это потому, что Internet Explorer не работает.)

...