2013-03-03 2 views
-1

Я пытаюсь избавиться от использования jQuery из своего виджета, имея проблемы с поиском, как заменить load().load() без jQuery?

Как сделать это на родном JavaScript?

  $('#IframeABC').load(function() { 
       var animator = new Animator('sWrapper'); 
       animator.animate(); 

       css('sWrap', 'display', 'block'); 


      }); 
+0

одушевленные() также с помощью jQuery API, а не только load() – Swordfish0321

+2

@ Swordfish0321: Это, по-видимому, метод 'Animator'. – Ryan

+0

ahhhhhhhhhhhhh. – Swordfish0321

ответ

3

Это ... onload.

document.getElementById('IframeABC').onload = function() { 

Или, чтобы быть более современным об этом, load событие (несовместим ;)?):

document.getElementById('IframeABC').addEventListener('load', function() { 
+0

Сладкий, спасибо! Примите, как только смогу :) – Alosyius

+0

Я не думаю, что более современное «несовместимо», если у вас есть функция-обертка, которая использует либо «addEventListener' /' attachEvent », тот, который не хочет использовать jQuery, обычно имеет функция для этого. –

+0

@ FabrícioMatté: Dunno ... Я не использую jQuery, когда я вообще не забочусь о совместимости. Это хорошее чувство. : D – Ryan

1

эквивалент будет:

var element = document.getElementById('IframeABC'); 
var handler = function() { 
    // Handler in no jQuery obviously 
} 
if (element.addEventListener) { 
    element.addEventListener('load', handler, false); 
} else if (element.attachEvent) { 
    element.attachEvent('onload', handler); 
} else { 
    element.onload = handler; 
}