Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   биндинг евентов (https://javascript.ru/forum/jquery/14776-binding-eventov.html)

_mad 30.01.2011 14:03

биндинг евентов
 
Все привет!

Помогите решить мои потуги обезьяннего кодирования. Есть некий блок кода , который я хочу забиндить на евент и при этот же код должен быть вызван на онлоаде. Мне кажется сама проблем ане имеет прямоего отношения к jquery, скорее к моему понимаю скрипта.

Я делаю примерно так.

$(document).ready(function(){

$(window).bind('resize': (function() {
/* doStuff(); */
})()
});

});

Код однократно (на онлоаде) выполянется после чего падает с
handler is undefined
[Прерывать на этой ошибке] if ( handler.handler ) {


То есть моя попытка вызвать прямо на бинде функцию один раз корректна. Вопрос. Как бы в таком случае сделали? Можно ли не разносить на два вызова/бинда ?

Sweet 30.01.2011 15:31

Я так понимаю, что (function(){})() возвращает undefined, и ошибка из-за этого. Думаю, не стоит усложнять, сделай так:
function fn(){
/* doStuff(); */
};

$(document).ready(function(){

fn();
$(window).bind({'resize': fn});

});

Хотя можно приколоться, и сделать тип того:
<script>
document.addEventListener('click', (function(){
  alert('.i.');
  return arguments.callee;
}()), false);
</script>

_mad 30.01.2011 16:55

спасибо! сейчас попробую.)


Часовой пояс GMT +3, время: 20:19.