2013-10-08 21 views
5

Po kliknięciu przycisku wyjścia w lekcji Przechwytuj opublikowanej dla SCORM aplikacja nie zostanie zamknięta. Próbowałem wszystkich opublikowanych metod. Nie działały. Captivate nie obsługuje javascript w wersji 7 to samo. Po wielu próbach znalazłem w końcu hak, którego mogłem użyć. Problem był spowodowany głównie przez Adobe nigdy nie uruchamiający LMSFinish. (dziwne, ponieważ są dwa wymagania, aby być SCORM zgodne ze szkoleniem, 1. Ogień LMSInitialize i 2. Ogień LMSFinish.) Po poinformowaniu LMS, że skończysz, LMS może oczyścić okno. Moduł szkolenia internetowego NIE MOŻE zamknąć okna za pomocą window.close. Więc na rozwiązanie.Zamknięcie A Sesja SCORM

Znajdź plik Utilities.js znajdujący się w folderze $ CaptivateInstallFolder/Templates/Publish/LMS/Standard/SCORM/default/js.

znaleźć następujące ...

function DoCPExit() 
{ 
    if(window != window.parent && window.parent && window.parent.hasOwnProperty("DoCPExit")) 
    { 
     window.parent.DoCPExit(); 
    } 
    else 
    { 
     window.close(); 
    } 
} 

i dodać następujące ...

function DoCPExit() 
{ 

    if(SCORM2004_objAPI){SCORM2004_CallTerminate();} 
    if(SCORM_objAPI){SCORM_CallLMSFinish();} 

    /* The code below will only work if there is a parent. No parent. No close.*/ 
    if(window != window.parent && window.parent && window.parent.hasOwnProperty("DoCPExit")) 
    { 
     window.parent.DoCPExit(); 
    } 
    else 
    { 
     window.close(); 
    } 
} 

I odpowiedział na moje własne pytanie, ale myślałem, że ktoś korzysta z mojego bólu. LMS może zamknąć okno, ponieważ LMS je otworzył.

Mam nadzieję, że to pomoże komuś.

Odpowiedz

0

Mówisz, że nie zamknie się poprawnie, nawet jeśli klikniesz kontrolkę "X" (np. Część kontrolek SCORM w oknie)? Czy to tylko wtedy, gdy zamkniesz okno przeglądarki?

+0

Symbol x nie zamknie okna. Okno nie może się zamknąć. Tylko okno nadrzędne może je zamknąć. – user2860594