2011-09-16 10 views
6

क्या जावास्क्रिप्ट का उपयोग कर फ़ाइल सिस्टम में छवि की ऊंचाई और चौड़ाई प्राप्त करना संभव है (यानी एक छवि जो डीओएम का हिस्सा नहीं है)? या मुझे छवि को डीओएम में इंजेक्ट करने के लिए जावास्क्रिप्ट का उपयोग करना होगा और इस तरह आयामों को पकड़ना होगा?क्या किसी छवि की ऊंचाई/चौड़ाई प्राप्त करना संभव है जो डोम में नहीं है?

मैं पूछता हूं क्योंकि मैं राफेल द्वारा उत्पन्न फ्लाई पर यूआई घटक प्रस्तुत करने के लिए एक जावास्क्रिप्ट विधि लिख रहा हूं, जो विधि पैरामीटर के हिस्से के रूप में तीन छवि पथ लेता है। इन्हें उपर्युक्त यूआई घटक प्रस्तुत करने के लिए उपयोग किया जाता है, और मुझे स्थिति उद्देश्यों के लिए छवियों के आयामों की आवश्यकता होती है।

अग्रिम धन्यवाद।

उत्तर

9

मैं जब तक लगता है के रूप में छवि के लोड होते ही आप चौड़ाई और ऊंचाई प्राप्त कर सकते हैं - आप हालांकि डोम को इसकी सुई देने नहीं होना चाहिए। उदाहरण के लिए:

var tmp = new Image(); 
tmp.onload = function() { 
    console.log(tmp.width + ' x ' + tmp.height); 
} 
tmp.src = 'http://cdn.sstatic.net/stackoverflow/img/sprites.png?v=4'; 
+0

मुझे console.log में चौड़ाई और ऊंचाई मिलती है, लेकिन जब मैं JSON.stringify() इसे करने का प्रयास करता हूं, तो यह प्रिंट नहीं करता है। ऑब्जेक्ट कंसोल में सही दिखता है, लेकिन मैं इसे पुनर्प्राप्त नहीं कर सकता – user2734550

-5

क्या जावास्क्रिप्ट का उपयोग कर फ़ाइल सिस्टम में छवि की ऊंचाई और चौड़ाई प्राप्त करना संभव है (यानी एक छवि जो डीओएम का हिस्सा नहीं है)?

  • नहीं

या मैं डोम में जावास्क्रिप्ट का उपयोग छवि सुई और आयाम है कि जिस तरह से आकर्षित करने के लिए होता है?

  • हाँ
+2

यिक्स, यह सच नहीं है। विवरण के लिए अन्य सभी उत्तरों देखें। – Malvolio

+0

मुझे लगता है कि मैंने विशेष रूप से क्या कहा (फ़ाइल सिस्टम तक पहुंचना) संभव नहीं है, लेकिन मुझे यूआरएल कहना चाहिए था। –

1

आप कोड के साथ छवि डाउनलोड कर सकते हैं:

var img=new Image(),imgWidth,imgHeight; 
img.onerror=img.onload=function(ev) { 
    ev=ev||event; 
    if(ev.type==="error") { 
    imgWidth=imgHeight=-1; // error loading image resourse 
    } 
    else { 
    imgWidth=this.width; // orimgWidth=img.width 
    imgHeight=this.height; // imgHeight=img.height 
    } 
} 
img.src="url_to_image_file"; 
4

आप जरूरी करने के लिए "फ़ाइल सिस्टम" नहीं मिल सकता है, लेकिन आप यह कर सकते हैं:

v = new Image(); 
v.onload = function() { 
    alert("size: " + String(v.width) + 'x' + String(v.height)); 
}; 
v.src = "http://www.gravatar.com/avatar/96269f5a69115aa0e461b6334292d651?s=32&d=identicon&r=PG"; 

आप चाहेंगे गिनती है कि "डोम में जोड़ना" के रूप में?

संबंधित मुद्दे

 संबंधित मुद्दे