Web Info & Tutorials

June 30th, 2009

FIREFOX 3.5: THE FASTEST FOX HAS LANDED

It is enthusiastic to wager the beatific vibes at Mozilla HQ today as we launch Firefox 3.5! It is ever an engrossing mate to wager a application develop, and actualise how Byzantine and super the impact is.

Congrats to the application developers discover there who are employed hornlike to attain the Web better. With test versions of Firefox 3.5, Safari 4, and Chrome 2 discover in the wild…. things are production up nicely.

The Firefox 3.5 promulgation is elating for me because it rattling benefits the developers. We intend Open Video, @font-face, interbreed place XHR, Geo Location APIs, CSS Media Queries, Native JSON, Offline support, Web Workers, and so such more.

And, the concern keeps moving. I hit seen whatever rattling modify things in the nightly tree, and countenance nervy to beign around as the aggroup entireness on the incoming enthusiastic Firefox.

Updates

Steve Souders has posted on Firefox 3.5 effort 10 discover of 11 in his UA Profiler tests.

Watch the downloads become in with this modify download tracker that uses Canvas and SVG, every thanks to Justin Scott. The stats so farther exhibit that if the underway evaluate trends stop we module vex the Firefox 3.0 download day, which is a assail to all.

Sean Martell has created a pleasant wallpaper and persona to commemorate!

June 29th, 2009

NEW SESSIONS AT THE AJAX EXPERIENCE 2009

Summer is correct around the crossway - so before you attain some pass plans here’s digit hurried state component to interbreed soured your to-do list: Register now to hair in inner $300 savings for The Ajax Experience conference, Sept 14-16 in Boston, MA.

It’s exclusive been two weeks since we declared unstoppered entrance for The Ajax Experience with the prospect of additional sessions existence additional to the scheme locate over the incoming some weeks. And patch a sort of your peers hit already practical and condemned plus of the $300 early-bird reduction (which expires at the modify of incoming month), we’ve already additional more sessions to our agenda, including:

The speakers and attendees at The Ajax Experience are employed with the most modern technologies today, antiquity Ajax and flush Web face ends, as substantially as figuring discover newborn structure to attain salutation instance ease faster. And if security, performance, and SOA are essential to you, you’ve become to the correct place.

Your $300 reduction expires the modify of July - register today

If you hit some questions most registration, motion to Beantown or transfer a team, gratify occurrence your Delegate Relations Manager, Jackie playwright at janderson@techtarget.com or 781-657-1380. She’s more than bright to support you.

See you at The Ajax Experience!

June 26th, 2009

FUN WITH TEXT-SHADOW

Zach President is at it again, this instance gift us a recreation weekday treat with CSS book shadow, every via:

JAVASCRIPT:

  1.  
  2. document.getElementById(‘text-shadow-box’).onmousemove = function(e) {
  3.     var xm = e.clientX - 300;
  4.     var ym = e.clientY - 175;
  5.     var d = Math.sqrt(xm*xm + ym*ym);
  6.     text.style.textShadow = -xm + ‘px ‘ + -ym + ‘px ‘ + (d / 5 + 10) + ‘px black’;
  7.    
  8.     xm = e.clientX - 600;
  9.     ym = e.clientY - 450;
  10.     spot.style.backgroundPosition = xm + ‘px ‘ + ym + ‘px’;
  11. }
  12.  
June 26th, 2009

SCRIPTY2 HAS LANDED

Thomas physicist has been working in the open on scripty2 for a bit, and today the website has launched.

It modify comes with pleasant documentation and fun demos:

What’s newborn in scripty2? It is a rank rewrite, and comes prepacked in threesome parts:

scripty2 core contains the important namespace and an Atlantic for extensions to be added. It also contains helpers and the like.

scripty2 fx: The scripty2 personalty support provides for time-based transformations of DOM elements and capricious JavaScript objects. This is at the set of scripty2 and presents a excellence of the seeable personalty support of script.aculo.us 1.X.

scripty2 ui currently has digit submodule: Utility functions for CSS parsing, colouration normalization and tweening.

We are doing more and more on the client, requiring pleasant planning models to do modify effects. Great to wager digit of the granddaddies of them every intend a newborn coat.

June 25th, 2009

FIRST BETA OF YUI 3.0 RELEASED

Congrats to the YUI aggroup for releasing their prototypal beta of YUI 3:

We’ve spent a aggregation of instance in this promulgation wheel processing the set elements of YUI 3 — YUI, Node, and Event — to secure that we hit the correct API feat forward. Performance is improved, and we’ve civilised our module/submodule structure. In whatever cases we’ve additional momentous newborn features, including inbuilt hold for circumstance deputation in the Event package; however, the pore is on agitated the humble accumulation to creation quality.

Several YUI 2.x components attain their YUI 3 entry in this release:

  1. DataSource: YUI’s accumulation conception place provides a accepted programme into accumulation sets, disregarding of the data’s lineage (local, XHR, XSS, etc.) and info (JSON, XML, CSV, etc.);
  2. ImageLoader: ImageLoader allows you to defer the weight of images that aren’t in the viewport when the tender paints, throttling bandwidth practice and rising performance;
  3. History: The History factor gives you curb of the brower’s backwards fix within the environment of a single-page scheme application;
  4. StyleSheet: StyleSheet makes it cushy to create and add CSS rules on the fly, allowing you to dynamically call tender elements with less repaints.

As conception of the more granular packaging in the newborn codeline, we’ve created removed YUI 3 modules to concern functionality that in YUI 2 was bundled with another components. Cache, DataType and DataSchema entry in this release; apiece of these utilised to be a conception of DataSource.

To ready up to date, analyse discover the roadmap and dashboard that the aggroup keeps up to date.

June 25th, 2009

JAVASCRIPT SANDBOX USING WEB WORKERS

We hit been sandboxing JavaScript in iframes for a daylong time. The Web Worker API has the pleasant concept that it doesn’t hit admittance to objects same document and the like, and meet runs cipher that you crapper transfer over to it.

With this, prophet Grey has created an empiric jsandbox API that gives you an eval duty that you transfer in whatever code, and optionally signaling data, asking for results, and an onerror callback.

Code looks same this:

JAVASCRIPT:

  1.  
  2. jsandbox
  3.     .eval({
  4.       code    : “x=1;Math.round(Math.pow(input, ++x))”,
  5.       input   : 36.565010597564445,
  6.       callback: function(n) {
  7.           console.log(“number: “, n); // number: 1337
  8.       }
  9.   }).eval({
  10.       code   : “][];.]\\ (*# ($(! ~”,
  11.       onerror: function(ex) {
  12.           console.log(“syntax error: “, ex); // structure error: [error object]
  13.       }
  14.   }).eval({
  15.       code    : ‘"foo"+input’,
  16.       input   : “bar”,
  17.       callback: function(str) {
  18.           console.log(“string: “, str); // string: foobar
  19.       }
  20.   }).eval({
  21.       code    : “({q:1, w:2})”,
  22.       callback: function(obj) {
  23.           console.log(“object: “, obj); // object: goal q=1 w=2
  24.       }
  25.   }).eval({
  26.       code    : “[1, 2, 3].concat(input)”,
  27.       input   : [4, 5, 6],
  28.       callback: function(arr) {
  29.           console.log(“array: “, arr); // array: [1, 2, 3, 4, 5, 6]
  30.       }
  31.   }).eval({
  32.       code    : “function x(z){this.y=z;};new x(input)”,
  33.       input   : 4,
  34.       callback: function(x) {
  35.           console.log(“new x: “, x); // newborn x: goal y=4
  36.       }
  37.   });
  38.  
June 24th, 2009

IPHONE 3GS RUNS FASTER THAN CLAIMS, IF YOU GO BY SUNSPIDER

Rana Sobhany of Medialets has posted on Sun Spider benchmarks of the iPhone 3GS as substantially as another devices which shows soured the action seek of 3GS:

The WebKit Open Source Project provides a JavaScript effort Suite dubbed SunSpider. According to the statement on the SunSpider bag page, “this criterion tests the set JavaScript module only, not the DOM or another application APIs. It is fashioned to study assorted versions of the aforementioned browser, and assorted browsers to apiece other.” We at Medialets hit institute it to be digit of the prizewinning attempts to manoeuvre actual concern JavaScript action in a counterpoised and statistically good way.

Medialets ran the SunSpider effort flat in the mass environments:

  1. Safari 4.0.1 on a 2.0 rate Intel Core 2 Duo White MacBook.
  2. The MacBook results were utilised as a line for qualifying comparisons.
  3. Mobile Safari on the iPhone 3G with iPhone OS v2.2.1
  4. Mobile Safari on the iPhone 3G with iPhone OS v3.0
  5. Mobile Safari on the iPhone 3GS with iPhone OS v3.0
  6. The “Browser” app on the T-Mobile G1 with Android OS v1.5 (Cupcake)
  7. The “Web” app on the Palm Pre with Web OS v1.0.2

Each figure was full remodeled and rebooted directly before streaming the effort suite. Every endeavor was prefabricated to verify that no abnormal scenery tasks were executing patch the tests were running. The SunSpider tests automatically separate fivesome nowadays sequentially and the stingy cipher from every fivesome tests are reported. Network pace and interval hit no gist on the results of the test.

We every undergo to watch of benchmarks, but it does exhibit soured how coercive these devices are getting!

June 23rd, 2009

PROTOFISH: ADVANCED HOVER MENU

ProtoFish is an modern waver schedule supported on Prototype, cursive by saint Slagter. You crapper easily add a retard to your schedule (on mouseout) and opt your possess waver class. All ProtoFish menu’s module move to users who ingest the TAB-key to manoeuver finished your page.

It is unimportant to use. Once you alluviation up the playscript (requires Prototype 1.6+) you can:

JAVASCRIPT:

  1.  
  2. document.observe(‘dom:loaded’, function() { 
  3.       new ProtoFish(‘my-menu’, ‘400′, ‘hover’, false)
  4. });
  5.  

where the quaternary parameters are:

  • Menu id (In the example: my-menu)
  • Delay before approaching the schedule (In the example: 400 ms)
  • The classname to add when hovering over menuitems (In the example: hover)
  • Whether or not the schedule should vanish .active classnames when your traveller hovers over the schedule (In the example: false)
June 22nd, 2009

HTML 5 AND THE WIZARD OF OZ

Kyle Weems, the CSS Squirrel and communicator of the irregular and freakish queer of the aforementioned name, targets his stylish performance at Ian Hickson:

Click-through to wager the full comic. The attendant journal entry fleshes discover the base upset whatever more:

Why is it that the mortal who is the edifice of this impact is allowed to be a Negro who rejects consensus, actively denies issues (based on his possess admitted policy) and substitutes proficient advice in essential areas same availableness with analyzing accumulation from the Google Index and parsing numbers? Numbers that we cannot hit a ordinal band support because every letter to do meet this is ignored?

There is no uncertainty in my nous that Ian is brilliant. However no man, no concern how brilliant, should be allowed to be so important on a description when he is transfer every this case to the plateau with him.

The sort of grievances folks hit with some standards impact are legion, but wouldn’t chronicle be more recreation if they every came with comics?

(As I wrote this, Dion leaned over and said, “I utilised to impact with Ian, I encounter it queer to conceive of anyone disagreeable to curb him.”)

June 19th, 2009

NODEITERATOR.AREYOU(IMPRESSED | WHOCARES | WHA?)

John Resig has posted on the DOM crossing methods today in Firefox 3.5 and then a aerobatics discover place on the merits of the NodeIterator API. He isn’t impressed:

This API is, at best, bloated, and at poorest unbelievably foolish and disturbed for day-to-day use.

Observe the method mode of createNodeIterator:

JAVASCRIPT:

  1.  
  2. var nodeIterator = document.createNodeIterator(
  3.   root, // stem convexity for the traversal
  4.   whatToShow, // a ordered of constants to separate against
  5.   filter, // an goal with a duty for modern filtering
  6.   entityReferenceExpansion // if entity meaning children so be expanded
  7. );
  8.  

This is unrestrained for what should be, at most, a ultimate artefact to cross DOM nodes.

One conception of the criticism involves the ordinary ornament of bitwise operators that are ordinary in C, C++, and a taste of Java (and elsewhere too). When expanse is at a premium, these are a beatific choice. There are also whatever pleasant lateral personalty when you ingest them (building up the flags, munging them later, etc).

However, as Evangelist points out, these are more for CSci students than for the cipher Web developer.

But then the disturbed comes in: In visit to superior multiple, different, types of nodes you staleness OR unitedly the properties to creating a resulting sort that'll be passed in.

For warning if you desired to encounter every elements, comments, and book nodes you would do:

JAVASCRIPT:
  1.  
  2. NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT
  3.  
I’m not trusty if you crapper intend a much more counter-intuitive JavaScript API than that (you crapper trusty wait little, to no, ordinary developer adoption, that’s for sure).

He goes on to declare whatever more Webby APIs much as:

JAVASCRIPT:

  1.  
  2. document.getNodes( Element, Comment, Text );
  3.