SitePen Blog Category ‘browsers’

Dijit has a tremendous wealth of high quality and feature-rich form elements providing key functionality including validation, time calculation, spinner controls, calendars, and much more. Furthermore, Dijit gives you a set of themes to choose from: Tundra, Soria, Noir, and Nihilo.
(more…)
Tags: css, datebox, dijit, form, input, spinner, style, text, timebox
Posted in Dojo, Firebug, JavaScript, UI Design, ajax, browsers, debugging | 4 Comments »
With the proliferation of real web browsers on mobile devices (iPhone, Android, Palm Pre, Nokia), an increasing number of browsers (Chrome) or browser-like platforms (AIR, Titanium, Jaxer), portal standards for widgets and gadgets (Caja, AdSafe, work by the OpenAjax Alliance, and much more), are the days numbered for a JavaScript toolkit that uses the same code base across all platforms without a compile step numbered?
(more…)
Tags: browser detection, optimization, Performance
Posted in Dojo, JavaScript, air, ajax, browsers, mobile, thoughts | 5 Comments »
The design and styling elements that make up the Web 2.0 mantra have been defined by—among other things—rounded corners, transparency, and drop shadows. These three concepts have been key in many CSS-driven web applications or sites. (For examples of some great CSS-driven work, check out cssvault and cssBeauty.) Following the CSS2 recommendation, for years we’ve been using a combination of code and images to make these types of things possible.
My colleague, Torrey Rice, has touched upon unofficial CSS advancements in Safari 3.1 in his discussion about CSS animations, so I’ll focus on advancements that are part of ongoing CSS3 drafts. While CSS 3 as a whole is much maligned, we can use some of the properties that have already been implemented in today’s browsers with just a few simple lines of CSS. Dijit Themes for the Dojo Tooolkit already take advantage of these enhancements where it makes sense. Of course, you can also customize or write your own theme taking advantage of CSS3 wherever possible.
(more…)
Tags: CSS3
Posted in Dojo, UI Design, browsers | 2 Comments »
The Dojo Toolkit 1.2 has landed and I’ll be talking about a new feature — dojo.attr — and its closely related cousin, dojo.style. In a given block of HTML, not all attributes are created equally. Take the following example:
<div id="testDiv"
tabindex='1"
onmouseover="onOver();"
name="nameAtt"
style="background:#ffff00;">
New Content
</div>
(more…)
Tags: dojo.attr, dojo.style
Posted in Dojo, JavaScript, ajax, browsers | No Comments »
So your cool new app is perfect, but you want it to lock the user out when the browser hasn’t had focus after 15 minutes? Well that’s easy you think, I’ll just connect to the document’s blur and focus events and be good to go. You quickly add a little bit of code to your Dojo widget:
dojo.connect(dojo.doc, "onblur", this, "onWindowBlur");
dojo.connect(dojo.doc, "onfocus", this, "onWindowFocus");
That should do it you’d think. Launch your app with Firefox and everything is great, easy enough. The same is true with Safari. After reluctantly firing up your Virtual Machine to test Internet Explorer 6, much to your dismay, onfocus events are immediately followed by onfocusout events. You feel the harsh reality that IE6 is going to suck away a bit more of your life.
(more…)
Tags: events, focus, ie6
Posted in Dojo, Performance, ajax, browsers | 5 Comments »
Recently, using the Deft project, I created a multi-file uploader Flash component for DojoX. It uses a typical design pattern—embed a hidden SWF in the web page, and with the ExternalInterface, trigger the FileReference’s browse() method to open a system dialog.
Shortly thereafter, it came to my attention that this functionality is to be crippled in version 10 of the Flash player. Due to security concerns, a dialog can only be opened upon a user interaction—in this case, the user must click on a button, preventing malicious code from opening the dialog. This change has caused quite an uproar on the Adobe forum, and the SWFUpload forum.
(more…)
Posted in Dojo, JavaScript, ajax, browsers | 6 Comments »
Building the Dojo Toolbox allowed us to dive into Adobe® AIR™, and to create a blended toolchain of JavaScript, PHP, Python and Rhino (JavaScript on the Java Virtual Machine) for developing an amazing desktop application using open web technologies. Read about how we built the Toolbox and what we really think of AIR.
The Initial Whirlwind
We started in late May with zero experience developing an Adobe AIR application and a goal of getting a great application developed in about one month. We had to figure out what exactly we wanted the Toolbox to do and what it could do. We also had to begin figuring out how to make it all happen. Just about all software projects start out that way, right?
(more…)
Tags: adobe air, dojo toolbox
Posted in Dojo, Open Source, ajax, browsers | 16 Comments »

The Dojo Toolkit now has support for multi-file uploads, thanks to the new Deft project. The dojox.form.FileUploader class embeds a hidden SWF file in the page which, when triggered, will open a system dialog that supports multiple file selection, and also file masks, which allows the user to filter their selection by file type.
(more…)
Tags: Deft, Dojo, dojox, Uploader
Posted in Dojo, JavaScript, Open Source, browsers | 36 Comments »
In the last post on string performance, we did an analysis of string performance that spanned all of the major browsers, with the goal of optimizing the performance of the dojox.string.Builder. While we were able to create significant improvements in performance—particularly with Firefox—the performance under Internet Explorer was still pretty poor compared to native methods.
The goal for this article was to bring Builder’s performance down to comparable native operations—and we were able to do with through a combination of a slight change in code with using different ways of calling the append method.
(more…)
Tags: ie6, ie7, internet explorer, string
Posted in Dojo, JavaScript, Performance, browsers | 10 Comments »
Recently improvements have landed in Dojo Toolkit version of Firebug Lite. These improvements have taken it beyond the desperate need for logging in Internet Explorer to a very viable alternative. In fact, the reasoning behind some of the improvements I have implemented is to develop on Safari, which is so fast you sometimes forget you’re coding an application for a browser.
(more…)
Posted in Dojo, Firebug, ajax, browsers, debugging | 3 Comments »