2014-03-19 3 views
0

내 웹 응용 프로그램에서 Windows 응용 프로그램을 열 때 사용자 지정 프로토콜을 사용하고 있는데 문제없이 올바르게 작동하지만 Windows 응용 프로그램이 PC에 insatlled가 아닌 경우 새 창 및 표시 주소가 이해되지 않았습니다. 나는이를 방지와 내 현재 코드는 당신이 시도 할 수브라우저가 새 창을 열지 못하도록 막는 방법

var url="test:?var="+value+"?var2="+value2+"?var3="+value3; 
var win= window.open(url, 'test', 'width=1000,height=700,top=1,left=1,resizable=yes', '1'); 
if(win==null || win.closed==true) 
    alert("Please install the application "); 

답변

0

가 나는 해결책 here의 방탄하지를 발견하지만 일

저장됩니다
0

아래에 주어진 메시지를 표시해야 할 ... 윈도우 응용 프로그램이 설치되어 있지 않은 경우 url의 값이됩니다 어떤

확인합니다. null 인 경우 확인해 볼 수 있습니다.

if(url==null || win.closed==true) 
    alert("Please install the application "); 
0

아약스를 사용할 수 있습니다. 먼저 url이 존재하는지 확인하기 위해 ajax 요청을 보냅니다. 창이 열리는 것을 만족하지 않으면 오류가 발생합니다. 마침내

function checkUrlstatus (yoururl){ 
    var request = new XMLHttpRequest; 
    request.open('GET', yoururl, true); 
    request.send(); 
    request.onreadystatechange = function(){ 
     if(request.readyState==4){ 
      console.log(request.readyState); 
      // code for opening the url 
      return true; 
     }else{ 
      // code for error message on the same page 
      return false; 
     } 
    } 
}; 
관련 문제