IE8 은 필터 로 미리 보기 그림 을 업로드 하고 C: \ fakepath \ \ *. jpg 문 제 를 해결 하 며 로 컬 경 로 를 가 져 옵 니 다.

4065 단어 자바 script
IE8 은 필터 로 미리 보기 그림 을 업로드 하고 C: \ fakepath *. jpg 문 제 를 해결 합 니 다. 로 컬 경 로 를 가 져 옵 니 다. IE8 은 안전 을 고려 하여 로 컬 경 로 를 fakepath 로 바 꾸 었 습 니 다. 생각 지도 못 했 지만 우리 프로그래머 들 에 게 이렇게 큰 문 제 를 일 으 켰 습 니 다. 미리 보기 기능 을 업로드 하기 위해 귀 를 긁 고 볼 을 긁 었 습 니 다. 인터넷 에서 많은 자 료 를 찾 아 편집기 에서 실 행 했 지만 여러 번 시험 에 성공 하지 못 했 습 니 다.주요 오류 유형 은 다음 과 같 습 니 다. 1. 정의 되 지 않 거나 null 이 인용 한 속성 "item" 을 가 져 올 수 없습니다.2. 방문 거부;절망 적 인 수색 속 에서 갑자기 새로운 답 이 나 왔 습 니 다. 어 떨 지 모 르 겠 지만 한번 해 보 겠 습 니 다. 지푸라기 라 도 잡 아 당 기 며 과연 성 공 했 습 니 다!!도대체 뭘 까요?
- 크로스 필드 -
맞습니다. 도 메 인 을 넘 었 습 니 다. html 파일 을 로 컬 에서 브 라 우 저 로 열 었 습 니 다. (IE8 모드 로 기억 하 세 요) 과연 성공 하 였 습 니 다!다음은 가장 간단 한 코드 를 첨부 합 니 다.

<html>
    <head>
        <meta charset="UTF-8">  
    head>
    <body>
        <div id="box" style="border:1px solid green;
            height:50px;width:100px">div> 
         <p><input type="file" id="fileId" size="20"
                onchange="javascript:PreviewImg(); "/> 
         p>
 <script>
var ofile = document.getElementById("fileId");
var oBox = document.getElementById("box");
function PreviewImg(){              
    ofile.select();  
    // file           
    //document.selection.createRange()       
    ofile.blur(); 
    //       , IE8 ,      ,          
    var imgSrc = document.selection.createRange().text;
    //        
    oBox.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
            oBox.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc; 
} 
script>
    body> 
html>

편폭 이 제한 되 어 코드 형식 이 이상 적 이지 않 습 니 다.
비고:
document. selection 은 현재 웹 페이지 에서 선택 한 내용 을 표시 합 니 다.
방법 은 다음 과 같다.
clear         
empty      
createRange    TextRange   ControlRange    
createRangeCollection     

속성:
type         
typeDetail     

document.selection.createRange()
현재 텍스트 에 따라 TextRange 대상 을 되 돌려 주거 나 컨트롤 에 따라 controlRange 대상 을 되 돌려 줍 니 다.

좋은 웹페이지 즐겨찾기