2012-08-07 4 views
1

새 창에서 .jpg 및 .pdf 파일을 여는 자바 스크립트를 만들려고합니다. 파일 링크를 클릭 할 때 매우 짜증나는 오류가 계속 발생합니다. 노르웨 이어에서 번역 된 팝업 오류 :javascript : window.open이 잘못된 URL 오류를 던졌습니다

"페이지 (사이트?)의 주소 :"이 (가) 잘못되었습니다.

오류 메시지에서 "확인"을 클릭하면 새 pdf/jpg 창이 예상대로 열립니다.

completly redundant 오류 메시지를 제거하려면 어떻게합니까?

<script language="javascript" type="text/javascript"> 
    _spBodyOnLoadFunctionNames.push("OpenPDFInNewWindow()"); 

    function OpenPDFInNewWindow() 
    {  
     var aAllLinks = document.links;  
     for(var i=0;i<aAllLinks.length;i++) 
     { 
     var oA = aAllLinks[i]; 
     var sHREF = oA.href.toLowerCase(); 

     if(sHREF.indexOf(".jpg") > 0 || sHREF.indexOf(".pdf") > 0) 
      oA.href="javascript:window.open('"+oA.href+"','test','width=300').focus();"; 
     } 
    } 
    </script> 

스크립트는 페이지에서 관련 파일 확장자를 포함하는 태그를 확인한 다음 href 속성에 window.open 명령을 추가합니다.

저는 IE9와 Chrome을 사용해 보았습니다. 두 브라우저는 모두 같은 익스텐트를 던졌습니다. 이것이 IE에서 작동하는 것이 중요합니다. window.open 호출에서 여러 가지 조합의 인수를 시도했습니다. oA.href 호출이 같은 URL을 반환

:)을 회신

http://<server>/arbeidsrom/ET24130/dokumenter/image.jpg 

내가 자바 스크립트에 신인이야을, 그래서 명심하시기 바랍니다 (코드 http://www.synergyonline.com/Blog/Lists/Posts/Post.aspx?ID=18 @ 랜디 윌리엄스에서 다친 스 니펫)

답변

0

는 그것을했다,이

if(sHREF.indexOf(".jpg") !=-1 || sHREF.indexOf(".pdf") !=-1) { 
    oA.onclick=function() { 
    var w=window.open(this.href,'test','width=300'); 
    if(w) { 
     w.focus(); 
     return false 
    }; 
    return true; 
    } 
} 
+0

당신이 mplungjan 감사하십시오! – user1582362

0

대부분의 브라우저에는 웹 기반 파일 형식 이외의 다른 파일 형식을 표시 할 수있는 고유 기능이 없기 때문입니다. 특히 .pdf. IE 용으로는 .pdf 플러그인이 설치되어 있고 다른 브라우저에는 설치되어 있지 않을 수 있습니다. 나는 오히려 무엇을하고 있는지보다는 제안 .pdf 포함 된 새 페이지가 아닌 하나를 열 것입니다.

관련 문제