기술문서 ID KB000005
HowTo DEXTUploadNX 이벤트 함수가 실행되는 과정에서 일부 브라우저가 멈추는 현상이 발생할 때
에러코드
태그 DEXTUploadNX 문제해결
작성일 2015-02-23
문제

DEXTUploadNX를 사용하여 파일을 업로드 혹은 다운로드 기능을 수행하는 화면에서 DEXTUploadNX가 제공하는 이벤트가 발생하여 연결된 함수가 동작할 때, alert 혹은 confirm과 같은 자바스크립트 내장 함수를 실행하면 브라우저가 정지되는 현상이 있습니다.

Chrome, Firefox, Safari와 같은 브라우저에서 발생합니다.

(IE는 2014년까지 발생된 사례가 없습니다.)

window.onload = function () {
CreateDEXTUploadNX_Operator({
...
NXEventFunctions: {
OnNXOperatorEventError: function (id, optype, err) {
// 아래 alert 함수가 실행되는 과정에서 브라우저가 정지될 수 있습니다.
alert("Error!");
}
});
}


해결

DEXTUploadNX.js 파일에 브라우저가 중지되는 현상을 막기 위해 alert, confirm함수를 대체하는 함수가 제공됩니다.

해당 함수는 NXAlert(id, message), NXConfirm(id, message) 입니다.

window.onload = function () {
CreateDEXTUploadNX_Operator({
...
NXEventFunctions: {
OnNXOperatorEventError: function (id, optype, err) {
// alert 함수를 NXAlert으로 교체
NXAlert(id, "Error!");
}
});
}

NXAlert, NXConfirm 함수는 브라우저 종류와 상관없이 동작을 합니다.

그러므로 OnNXOperatorEventError와 같이 DEXTUploadNX에서 발생하는 이벤트를 수행하는 함수는 일괄적으로 NXAlert, NXConfirm 함수를 사용하면 브라우저가 중지되는 현상을 막을 수 있습니다.