27מאי2010

איך לכתוב ל console מבלי לשבור את הקוד

כולנו מכירים את הפקודה console.log הבעיה היא כשאנחנו עוברים מגרסאת הפיתוח לגרסא שבאוויר אנחנו צריכים לעבור בכל הסקריפטים של ה JS ולהתחיל למחוק את הפקודה
גם כשאנחנו רוצים לבדוק ב IE אנחנו צריכים לשים בהערות את הכל, בניתי סקריפט קטן שפותר את כל הבעיות האלה בקלות… בואו לראות איך..

הרעיון הוא פשוט , לבנות מחלקה שתעטוף את ה CONSOLE ותבדוק אם הוא קיים בכלל

הנה המחלקה :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
dbug = {
 
	enabled : false
 
	,enable:function()
	{
		if (window.console)
		{
			this.enabled = true;
			this.log('enabling dbug');
		}
 
	}
	,disable:function()
	{
		this.enabled = false;
	}
	,log:function(msg)
	{
		if (this.enabled == true)
		{
		return console.log(msg);
		}
	}
};

עכשיו בשביל להתחיל אותה כל מה שאנחנו צריכים לעשות זה לקרוא ל dbug.enable() ובשביל לכתוב לקונסול נעשה dbug.log עכשיו

אם אנחנו רוצים לבטל את ה console נעשה dbug.disable()

שימו לב שהמחלקה בודקת לבד אם קונסול קיים ואם לא אז זה כאילו לא הפעלתם מעולם את dbug.enable זאת אומרת שבעצם תוכל לעבוד ב IE מבלי לשחק ב ENABLE וב DISABLE כל הזמן

לעצלנים במיוחד הנה קוד שמייבא את המחלקה ל jQuery

1
2
3
4
jQuery.fn.log = function(){
dbug.log(this);
return this;
}

כל מה שתצטרכו לעשות זה פשוט לשרשר את הפונקצייה לאלמנטים , לדוגמא :

1
2
dbug.enable(); // פעם אחת בדף מספיקה
$('.activeElements').log().css({width:500}).show()

זה הכל , תהנו.

תגובות

אין תגובות ל "איך לכתוב ל console מבלי לשבור את הקוד"

עדיין אין תגובות , תוסיף אחת

הוסף תגובה

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word