자바스크립트 고수님 ㅠㅠ 소스한번 봐주세요...
본문
아래 내용으로 된 소스가 있습니다.
2009년즘에 만들어진 소스인데 아직까지 잘 쓰고 있습니다만...
현재 IE11버젼이 나온 상태에서 IE버젼이나 윈도우 업데이트상태에 따라
팝업이 한번만 뜨고 두번째 부터는 팝업이 안뜨는 현상(응답이 없슴)이 나타나는 PC가 발생하고 있습니다.
물론 잘 되는 PC가 아직은 더 많은데 앞업이 한번만 뜨고 반응이 없다보니 소스수정을 해야할 것
같아 어떤 부분이 잘못되었는지 도움을 얻고자 글을 올렸습니다.
팝업이 한번만 뜨고 안뜨는 부분이 아래 내용중
function f_open(arg)
function f_open_answer(arg)
입니다.
혹시 부분인데 이 부분을 a herf 태그로 따로 빼야할까요? ㅠㅠ
고수님들 팁좀 부탁드리겠습니다 !! 꾸벅~
<script type="text/javascript">
function f_change(arg)
{
var path = $('word['+arg+']').value;
var split = path.split('|');
if(split[1] == 1)
{
$('pageView_1['+arg+']').innerHTML = "Page";
$('pageView_2['+arg+']').innerHTML = "Page";
$('chk_'+arg).disabled = false;
}
else if(split[1] == 2)
{
$('pageView_1['+arg+']').innerHTML = "No";
$('pageView_2['+arg+']').innerHTML = "No";
$('chk_'+arg).disabled = false;
}
else if(split[1] == 3)
{
$('pageView_1['+arg+']').innerHTML = "Day";
$('pageView_2['+arg+']').innerHTML = "Day";
$('chk_'+arg).disabled = false;
}
else if(split[1] == 4)
{
$('pageView_1['+arg+']').innerHTML = "과";
$('pageView_2['+arg+']').innerHTML = "과";
$('chk_'+arg).disabled = false;
}
else
{
$('pageView_1['+arg+']').innerHTML = "";
$('pageView_2['+arg+']').innerHTML = "";
$('chk_'+arg).disabled = true;
}
}
function f_question()
{
if(!$('school_no').value)
{
alert('클래스를 선택하세요. ');
$('school_no').focus();
return;
}
if(!$('subject_title').value)
{
alert('타이틀을 입력하세요. ');
$('subject_title').focus();
return;
}
var count = 0;
var pform =document.pForm_2;
for( var i=0; i < pform.elements.length; i++ )
{
var elem = pform.elements[i];
if ( elem.name == "check[]" )
{
if(elem.checked == true)
{
var mem = elem.value;
if(!$('range_1['+mem+']').value)
{
alert('범위를 설정하세요. ');
$('range_1['+mem+']').focus();
return;
}
if(!$('range_2['+mem+']').value)
{
alert('범위를 설정하세요. ');
$('range_2['+mem+']').focus();
return;
}
count++;
}
}
}
if(count == 0)
{
alert('Men을 선택하세요. ');
return;
}
$('title').value = $('subject_title').value;
$('test_day_t').value = $('test_day').value;
document.pForm_2.submit();
}
function f_checkAll()
{
var pform =document.pForm_2;
for( var i=0; i < pform.elements.length; i++ )
{
var elem = pform.elements[i];
if ( elem.name == "check[]" )
{
if(elem.disabled == false)
{
if($('checkAll').checked == true)
{
elem.checked = true;
}
else
{
elem.checked = false;
}
}
}
}
}
function f_open(arg)
{
popcenter('/question/popup_vocabulary_class.php?class_no='+arg,'popup_vocabulary',800,600,1,0);
}
function f_open_answer(arg)
{
popcenter('/question/popup_vocabulary_class_answer.php?class_no='+arg,'popup_vocabulary_answer',800,600,1,0);
}
function f_del()
{
var count = 0;
var pform =document.pForm_2;
for( var i=0; i < pform.elements.length; i++ )
{
var elem = pform.elements[i];
if ( elem.name == "check[]" )
{
if(elem.checked == true)
{
var mem = elem.value;
$('range_1['+mem+']').value="";
$('range_2['+mem+']').value="";
count++;
}
}
}
if(count == 0)
{
alert('삭제할 Men을 선택하세요. ');
return;
}
}
</SCRIPT>
답변 2
popcenter 라는 함수로 팝업뛰우시는거 같은데 이부분이 문제있어 보입니다.
window.open으로 바꾸시거나 해당함수 체크하세여
해당함수가 이렇습니다 ㅠㅠ 어디에 문제가 있는지 잘 모르겠습니다. 한번 봐주세요~
function popcenter(mypage,myname,w,h,scroll,resize){
var winl = (screen.width-w)/2;
var wint = (screen.height-h)/2;
var settings ='height='+h+',';
settings +='width='+w+',';
settings +='top='+wint+',';
settings +='left='+winl+',';
settings +='scrollbars='+scroll+',';
settings +='status=no,';
settings +='resizable='+resize;
win=window.open(mypage,myname,settings);
if(parseInt(navigator.appVersion) >= 4){win.window.focus();}
}