আমার কাছে একটি স্ক্রিপ্ট রয়েছে যা আমার ওয়েবসাইটে জাভাস্ক্রিপ্ট ত্রুটিগুলি সনাক্ত করে এবং এগুলি প্রতিবেদনের জন্য আমার ব্যাকএন্ডে প্রেরণ করে। এটি সম্মুখীন হওয়া প্রথম ত্রুটি, অনুমিত রেখা নম্বর এবং সময়টির প্রতিবেদন করে।
ডক্টাইপ অন্তর্ভুক্ত করতে সম্পাদনা করুন:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" xmlns:fb="http://www.facebook.com/2008/fbml">
...
<script type="text/javascript">
//<![CDATA[
// for debugging javascript!
(function(window){
window.onerror = function(msg, url, ln) {
//transform errors
if (typeof(msg) === 'object' && msg.srcElement && msg.target) {
if(msg.srcElement == '[object HTMLScriptElement]' && msg.target == '[object HTMLScriptElement]'){
msg = 'Error loading script';
}else{
msg = 'Event Error - target:' + msg.target + ' srcElement:' + msg.srcElement;
}
}
msg = msg.toString();
//ignore errors
if(msg.indexOf("Location.toString") > -1){
return;
}
if(msg.indexOf("Error loading script") > -1){
return;
}
//report errors
window.onerror = function(){};
(new Image()).src = "/jserror.php?msg=" + encodeURIComponent(msg) + "&url=" + encodeURIComponent(url || document.location.toString().replace(/#.*$/, "")) + "&ln=" + parseInt(ln || 0) + "&r=" + (+new Date());
};
})(window);
//]]>
</script>
এই স্ক্রিপ্টের কারণে, আমি আমার সাইটে যে কোনও জাভাস্ক্রিপ্ট ত্রুটি ঘটছে তা সম্পর্কে তীব্র সচেতন। বৃহত্তম অপরাধীদের মধ্যে একটি হ'ল "স্ক্রিপ্ট ত্রুটি"। ক্রোম 10+ তে এবং লাইনে ফায়ারফক্স 3+। ইন্টারনেট এক্সপ্লোরারে এই ত্রুটিটি বিদ্যমান নেই (বা অন্য কিছু বলা যেতে পারে?)।
সংশোধন (5/23/2013): এই "স্ক্রিপ্ট ত্রুটি, লাইন 0" ত্রুটি এখন আই 7 এবং সম্ভবত আই-র অন্যান্য সংস্করণে প্রদর্শিত হচ্ছে। সম্ভবত এই ধরনের আচরণের অস্তিত্ব না থাকায় সাম্প্রতিক IE সুরক্ষা প্যাচের ফলাফল।
এই ত্রুটিটির অর্থ কী বা এর কারণ কী এমন কারও কি ধারণা আছে? এটি আমার সামগ্রিক পেইজ লোডগুলির প্রায় 0.25% এ ঘটে এবং রিপোর্ট করা ত্রুটির অর্ধেকটি উপস্থাপন করে।
application/xhtml+xml
এক্সটিএমএল পার্সারে এটি চালনার জন্য আপনাকে সামগ্রী প্রেরণ করতে হবে (এক্সএইচটিএমএল স্পেসিফিকেশন বলে)। পুরো প্রচুর সামগ্রী রয়েছে যা দাবি করে এক্সএইচটিএমএল, তবে সাধারণ এইচটিএমএল ডক্টাইপ প্রেরণ করে। সামগ্রী নির্মাতারা কীভাবে ভুলভাবে এক্সএইচটিএমএল ব্যবহার করে, ব্রাউজারগুলি কেবল এক্সএমএল পার্সার ব্যবহার করার সিদ্ধান্ত নিয়েছে application/xhtml+xml
(এটি সত্যিই কঠোর পার্সার)। Hixie.ch/advocacy/xhtml এবং webdevout.net/articles/beware-of-xhtml বলছেন কেন এক্সএইচটিএমএল সঙ্গে এইচটিএমএল পার্সার ব্যবহার করবেন না।