আপনি যদি সত্যই এজ্যাক্স ব্যবহারের প্রয়োজন হয় ...
আমি পুরো ব্যবহারের ক্ষেত্রে এসেছি যেখানে অনলোড লোডকারীরা সঠিক পছন্দ ছিল না। আমার ক্ষেত্রে যখন জাভাস্ক্রিপ্ট মাধ্যমে মুদ্রণ। সুতরাং এজন্য এজ্যাক্স স্টাইলটি ব্যবহার করার জন্য দুটি বিকল্প রয়েছে:
সমাধান ঘ
বেস 64 ইমেজ ডেটা এবং একটি রেস্ট ইমেজ পরিষেবা ব্যবহার করুন। আপনার যদি নিজের নিজস্ব ওয়েব সার্ভিস থাকে তবে আপনি একটি জেএসপি / পিএইচপি REST স্ক্রিপ্ট যুক্ত করতে পারেন যা বেস 64 এঙ্কোডিংয়ে চিত্র সরবরাহ করে। এখন কিভাবে এটি দরকারী? আমি চিত্র এনকোডিংয়ের জন্য একটি দুর্দান্ত নতুন সিনট্যাক্স জুড়ে এসেছি:
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhE..."/>
সুতরাং আপনি Ajax ব্যবহার করে চিত্র বেস 64 ডেটা লোড করতে পারেন এবং তারপরে সমাপ্তির পরে আপনি চিত্রটিতে বেস 64 ডেটা স্ট্রিংটি তৈরি করেন! মহা আনন্দ :). আমি চিত্রটি এনকোডিংয়ের জন্য এই সাইটটি http://www.freeformatter.com/base64-encoder.html ব্যবহার করার পরামর্শ দিচ্ছি ।
$.ajax({
url : 'BASE64_IMAGE_REST_URL',
processData : false,
}).always(function(b64data){
$("#IMAGE_ID").attr("src", "data:image/png;base64,"+b64data);
});
Solution2:
ব্রাউজারটি এর ক্যাশে ব্যবহার করতে ট্রিক করুন। ব্রাউজারগুলির ক্যাশে থাকা অবস্থায় এটি আপনাকে একটি সুন্দর ফ্যাডইন দেয় ():
var url = 'IMAGE_URL';
$.ajax({
url : url,
cache: true,
processData : false,
}).always(function(){
$("#IMAGE_ID").attr("src", url).fadeIn();
});
যাইহোক, উভয় পদ্ধতিতে এর অপূর্ণতা রয়েছে: প্রথমটি শুধুমাত্র আধুনিক ব্রাউজারগুলিতে কাজ করে। দ্বিতীয়টিরটিতে পারফরম্যান্সের ভুল রয়েছে এবং ক্যাশে কীভাবে ব্যবহৃত হবে তা অনুমানের উপর নির্ভর করে on
চিয়ার্স, হবে