2012-06-06 20 views
6

IE içinde ActiveX kullanmadan istemci tarafında dosya boyutu almak için başka bir yolu var mı?Javascript'te activex kullanmadan istemciden dosya boyutu nasıl alınır?

İstemci tarafında dosya boyutu alıyorum ancak IE, ActiveX denetimleri için güvenlik bildirimi açılır penceresini açar. Dosya boyutu almak veya ActiveX açılır penceresini gizlemek için başka bir yolu var mı?

İstemci tarafında dosya boyutu almak için kod. peşin

<html> 
<body> 
<form id="file"> 
<input type="file" id="loadfile" /> 
<input type="button" value="Image Size" onclick="testSize()" /> 
</form> 
<script type="text/javascript"> 

function testSize(){ 
    var browserInfo = navigator.userAgent.toLowerCase(); 

    if(browserInfo.indexOf("msie") > -1){ 
     /* IE */ 
     var filepath = document.getElementById('loadfile').value; 
     alert(filepath + " Test "); 
     var myFSO = new ActiveXObject("Scripting.FileSystemObject"); 
     var thefile = myFSO.getFile(filepath); 
     var imgbytes = thefile.size; 
     alert("name " + thefile.name + "Size " + thefile.size); 
    }else{ 
     /* Other */ 
     var file = document.getElementById('loadfile').files[0]; 
     alert("name " + file.name + "Size " + file.size); 
    } 
} 
</script> 
</body> 
</html> 

teşekkürler.

cevap

3

Çözüm aldım.

Sorun, internet explorer tarayıcısı güvenlik ayarları ile ilgili kod ile bir geniune sorun yoktur. kodlama için güvenli olarak işaretlenmemiş internetoptions < güvenlik < customlevel < initialize ve komut aktif x kontrollerine gidip onları işaretlemek bir metin dosyasını açmak istediğinizde Genellikle Bu tür hataları yüz ya da bazı uzak sunucuya

dosyaları excel etkin ve ben senin sorununun kaldırılacağını düşünüyorum düşünüyorum

teşekkürler.

+0

Şimdilik, IE'de de kullanmam için aynı işlevi yazdım, IE'de çeşitli "Active X" onay kutularını etkinleştirdim ancak bunu kaçırdım :). Benim fonksiyonum burada https://gist.github.com/3347948 –