Good talk on JavaScript performance + some notes

יום שלישי, ספטמבר 28, 2010

Smashing magazine posted a Seven Must-See Videos and Presentations for Web App Developersfinally had the chance to start watching these videos(on the bus :)) The first one deals with Speeding up your JavaScript by Nicholas C. ZakasVery interesting talk:   While watching this remember that you should take the problematic places that need to perform better and make the changes there(as Nicholas also stated at the beginning of the talk and also in this post following the talk).I think that performance should also guide us while writing the code, BUT in most cases - the alternative that uses code that is a bit slower(say...
2 תגובות

jQuery Gotcha: val() might select the wrong option at a select element

יום שני, מרץ 22, 2010

Let's imagine you have the following select element: <select id="someSelect">  <option value="">-Select-</option>  <option value="12">21</option>  <option value="11">20</option>  <option value="10">19</option>  <option value="9">18</option>  <option value="8">17</option>  <option value="7">16</option>  <option value="6">15</option>  <option value="5">14</option>  <option value="4">13</option>  <option value="3">12</option>  <option value="2">11</option>  <option value="1">10</option></select> Notice that the text in some options appears as value in other options.you can get a select like this when composing an age drop down for example. Now for the Gotcha: which option will be chosen as a result of the following expression:$("#someSelect").val("12");???Answer: the selected option will be...
תגובה אחת

My simple JSON flavor – JavaScriptSerializer at the server and json2.js at the client

יום שבת, דצמבר 12, 2009

קודם כל, עבור הקורא היחידי שלי, אני מתנצל על העדר הכתיבה בבלוג, אוסף של תירוצים הוביל טיוטות של פוסטים אל ה GMAIL שלי ואני מקווה שייצאו בקרוב.  עכשיו לעניין הפוסט, זהו אמנם לא סיפור חדש בכלל, אבל אולי יחדש למישהו משהו.אין  שום סיבה לבנות/לפרסס מחרוזת JSON בעצמנו, http://www.flickr.com/photos/wwworks/ / CC BY 2.0 בצד השרת:קיימות כבר זמן רב ספריות מוכנות חיצוניות כמו JSON.net by Newton או זו של Ajax Proושתיים שמגיעות עם ה framework:JavaScriptSerializer DataContractJsonSerializer תוך כדי כתיבת שורות אלו, מצאתי את הפוסט המצויין של Rick Strahl מאוגוסט 2008, JSON Serializers in .NET - not there yet,בו הוא מסביר מדוע כתב...
11 תגובות

Cancel the CAPTCHA on Firefox

יום רביעי, מרץ 4, 2009

שלמה כתב את הפוסט המצויין Cancel the CAPTCHA - או לכתוב תגובות גם כשפתחתם כמה פוסטים במקביל כדי שנוכל להגיב בקלות (עד שיתקנו את הבאג המרגיז הזה).כיוון שאני משתמש בעיקר בשועל האש, החלטתי להכין חיקוי עלוב (לא התקנה או משהו מתוחכם) עבורו:צרו רשומה חדשה ב Bookmarks toolbarתנו לרשומה זו שם (לשלי קראתי Captcha Killer )וב location תדביקו את הקוד הבא:  javascript: var elems = document.getElementsByTagName("*"); for (var i = 0; i < elems.length; ++i) { if (elems.clientvalidationfunction != null && elems.clientvalidationfunction == 'ValidateCaptcha') { elems.clientvalidationfunction = ''; alert('go go go'); } }  הקוד צריך להיות בשורה אחת, וצריך למחוק את ה...
4 תגובות

RegisterArrayDeclaration unexpected behavior

יום שני, ספטמבר 22, 2008

למי שלא מכיר עדיין ClientScript.RegisterArrayDeclaration מיועדת להוספת מערך javascript אל הדף + ערך.זו פונקציה נחמדה שבודקת אם המערך כבר קיים על הדף, ואם כן, רק מוסיפה את הערך.אני משתמש בה בעיקר ב custom controls. תוך כדי פיתוח של control, עלתה הדרישה לעיתים לאתחל את המערך ללא איברים, כדי שיאותחל לאחר מכן ע"י javascript (על הסיבה לכך בהזדמנות אחרת), זו לא היתה בעיה כל אחת מהשורות הבאות תייצר את המערך SomeJSarr ריק על הדף: this.Page.ClientScript.RegisterArrayDeclaration("SomeJSarr", null);this.Page.ClientScript.RegisterArrayDeclaration("SomeJSarr", ""); הבעיה/התנהגות מרגיזה מתרחשת כשרוצים לטעום משני העולמות:control אחד שרק יאתחל את המערך, ו control אחר שיבצע רישום לערך,נשמע טריויאלי לא? משהו שמקביל ...
תגיות: ,
אין תגובות

Quick VS 2008 Tip: IntelliSense for in-house JavaScript files

יום שלישי, ספטמבר 2, 2008

כשיצא Visual Studio 2008 אחד מהפיצ'רים שדיברו עליהם היה IntelliSense ל javascript.לא ממש בדקתי את הסיפור כיוון שהבנתי שזה מאופשר עבור האובייקטים שבאים עם השפה ועבור ספרית  ה client של Ajax.Net. בעקבות הפוסט של אוהד בנושא Intellisense for jQuery ודברים טובים אחרים ששמעתי על הספריה, התחלתי לשחק קצת ב jQuery.עניין ה IntelliSense נראה די מדליק ומה שמאפשר אותו זו שורה קטנה בראש קובץ JS שמשמשת reference לקובץ אחר: /// <reference path="Scripts/SomeInHouseCommon.js" /> הוספת השורה לעיל בקובץ JS מסויים תיתן לכם IntelliSense לכל הפונקציות/אובייקטים שנמצאים ב SomeInHouseCommon.js ניתן להוסיף הפניות מכל מיני סוגים ופירוט מלא אפשר למצוא ב MSDNאני מניח...
אין תגובות