2013-06-03 5 views
8

मैं jquery के साथ एक छवि गैलरी बना रहा हूं। क्या यह जानने के लिए कोई संभावना है कि छवि jquery का उपयोग कर परिदृश्य या चित्र है या नहीं?कैसे गणना करें कि कोई छवि परिदृश्य या चित्र

आपके समर्थन के लिए धन्यवाद।

+0

ऊंचाई/चौड़ाई अनुपात की जांच करें? आपने क्या प्रयास किया है – JNF

+2

'चौड़ाई> लंबाई तो परिदृश्य अन्य चित्र ' –

+0

@ क्रिस्टियन मार्क धन्यवाद क्रिश्चियन मार्क – geovani075

उत्तर

17

आप छवि की चौड़ाई और ऊंचाई की तुलना कर सकते हैं।

var someImg = $("#someId"); 
if (someImg.width() > someImg.height()){ 
    //it's a landscape 
} else if (someImg.width() < someImg.height()){ 
    //it's a portrait 
} else { 
    //image width and height are equal, therefore it is square. 
} 
2

जावास्क्रिप्ट समारोह नीचे सबसे अच्छा अभिविन्यास

function get_orientation(src){ 

img = new Image(); 
img.src = src; 
var width = img.width; 
var height = img.height; 
height = height + height // Double the height to get best 
//height = height + (height/2) // Increase height by 50% 

if(width > height) { 
return "landscape"; 
} else { 
return "portrait"; 
} 

} 
+0

है यह मानता है कि छवि यूआई में पहले ही लोड हो चुकी है। क्या हमें वास्तव में अनुपात की गणना करने से पहले छवि लोड ईवेंट ट्रिगर करने की प्रतीक्षा नहीं करनी चाहिए? –

+1

क्यों "ऊंचाई = ऊंचाई + ऊंचाई // ऊंचाई को सर्वश्रेष्ठ पाने के लिए डबल"? –

0

यह मेरे लिए काम किया लौटने के लिए, प्राकृतिक ऊंचाई/चौड़ाई का उपयोग कर मूल गुण प्राप्त करने होंगे।

 function imageOrientation(src) { 

      var orientation, 
      img = new Image(); 
      img.src = src; 

      if (img.naturalWidth > img.naturalHeight) { 
       orientation = 'landscape'; 
      } else if (img.naturalWidth < img.naturalHeight) { 
       orientation = 'portrait'; 
      } else { 
       orientation = 'even'; 
      } 

      return orientation; 

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