2013-03-10 4 views
6

साथ छवि बदलें मैं एक जावास्क्रिप्ट Image object कि मैं jQuery के साथ गतिशील रूप से लोड किया है।जावास्क्रिप्ट छवि वस्तु

मैं जो करना चाहता हूं वह <img /> छवि को मेरे Image ऑब्जेक्ट पर संग्रहीत एक के साथ बदलना है। मुझे यह कैसे करना चाहिए?

नोट: मैं अपने <img /> टैग के स्रोत को बदलने के रूप में यह यह सर्वर से फिर से डाउनलोड करता है से बचना चाहते हैं, और मैं पहले से ही छवि मेरी छवि वस्तु में संग्रहीत किए गए

+0

क्या आपने '$ (छवि)' की कोशिश की है? छवियों को आमतौर पर कैश किया जाता है, इसलिए एक ही छवि को दो बार लोड करना इसे दो बार डाउनलोड नहीं करेगा। – Blender

+1

मुझे यह नहीं मिला। क्या आप थोड़ा और समझा सकते हैं? मुझे पहले से ही पता है कि '$ (छवि)' क्या करता है, लेकिन मेरे पास एक जावास्क्रिप्ट 'छवि' ऑब्जेक्ट में संग्रहीत छवि है, और मैं src को बदलने से बचना चाहता हूं क्योंकि जब भी मैं इसे बदलता हूं तो छवि को डाउनलोड नहीं करना चाहता – Pacha

+1

JQuery छवि में अपनी छवि वस्तु लपेटें। छवियों को कैश किया जाता है, इसलिए इसे पुनः डाउनलोड करने से आमतौर पर कोई फर्क नहीं पड़ता है। – Blender

उत्तर

9

तुम्हारा मतलब

$('#imageToChange').replaceWith(imageObject) 

?

+1

मैं केवल जावास्क्रिप्ट और jQuery के बिना एक ही चीज़ कैसे कर सकता हूं? –

+0

@ S.P.H.I.N.X - एक प्रश्न पूछें - आपका मतलब है 'document.querySelector ("img")। Src = imageObject.src'? – mplungjan

+0

नहीं, मैं एक जावास्क्रिप्ट ऑब्जेक्ट ('myImage = new image()') को दस्तावेज़ दस्तावेज़ जैसे 'document.querySelector ("img") = myImage' में सेट करना चाहता हूं। –

0

जावास्क्रिप्ट स्मृति में अपनी नई छवि है, और फिर मूल छवि के बाद इसे संलग्न करें, फिर मूल को हटा दें। यदि आप इसे फिर से उपयोग करना चाहते हैं तो आप इसे हटाने से पहले मूल को कैश करना भी चाह सकते हैं।

एचटीएमएल

<img id="replace" /> 

js

var img = new Image(); 
img.src = "someUri.png"; 
$("#replace").after(img); 
$("#replace").remove(); 
+0

यह '$ (" # प्रतिस्थापन ") से अलग कैसे है। Prop ('src', 'someUri.png') '? –

+3

'$ ('# प्रतिस्थापन') के साथ आसान। प्रतिस्थापित करें (img); ', बस कह रहा है। –

+0

@ExplosionPills - ओपी ने कहा कि 'src' को नहीं बदला है, इसलिए मैं उस मार्ग पर गया था। –

4

नई छवि वस्तु: jQuery के साथ

var Image_off = new Image(); 
Image_off.src = 'first.jpg'; 

छवि src परिवर्तन:

$("#my_image").attr("src",Image_off.src); 
1
jQuery के साथ

... आपका पृष्ठ और शो पर दोनों छवियों पहले से ही है या किसी एक को छिपाने के आधार पर एक तार्किक स्थिति।

+0

हम्म से पूछें, यह वास्तव में ओपी विचार के मुद्दे के बजाय अंतर्निहित प्रश्न का उत्तर दे सकता है :) – mplungjan

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