Discussion on Development in Several Different Flavours

Disabling JavaScript

September 11, 2006 | Tagged: ,

There seems to be a small but significant backlash to the proliferation of JavaScript. These days with buzzwords like Web 2.0 and AJAX becoming unavoidable, (see there they are again) some users seem to be getting sick of it and have started to “fight” back. Many people have started using the Firefox NoScript plug-in and others have just simply disabled JavaScript in their browsers. “Take that Web 2.0!” they shout.

NoScript Plug-in download stats

Last Updated: Sep 10, 2006
Total Downloads: 9622925 — Downloads this Week: 62473

I have no stats on the number of users with and without JavaScript disabled but if the numbers from the NoScript plug-in page are any indication we should really start taking this seriously. The first step is to make sure our pages work properly without JavaScript enabled. Here are instructions for each of the currently popular browsers. Google also has a nice list here.

Firefox

I generally assume that anybody who creates web pages uses Firefox as their default browser and has the Web Developer toolbar installed, it provided a quick and easy JavaScript toggle under the “disable” section. If you don’t have the toolbar simply open the “Options” dialog from the Tools menu, click “Content” then deselect “Enable JavaScript”.

Opera

In Opera it is by far the easiest, you can use the “Quick preferences” menu by pressing F12 and deselecting “Enable JavaScript”.

Safari

In Safari open the “Preference” dialog from the “Safari” menu, select “Security” and deselect the “Enable JavaScript” check box.

Internet Explorer

In Internet Explorer it is not quite as easy, however I’m sure there is a plug-in out there somewhere if you care to look (I don’t). Open the “Internet Options” dialog from the Tools menu and click the “Security” tab, make sure “Internet” is selected in the zone box then click the “Custom Level…” button. In the “Security Settings” dialog scroll the list nearly to the bottom and find the “Scripting” section, change the “Active scripting” setting to “Disable”.

Now that we have seen the horrible failure of our application without JavaScript what do we do? The answer, as usual, is “It depends”. Does your application require JavaScript in such a way that it can’t function without it? Is your JavaScript just effects and niceties? Figuring this out will guide you to a solution. You can use the <NOSCRIPT> HTML tag to let users know that they must have JavaScript enabled to use your site or you can just make it degrade gracefully to a non-JavaScript site.

ASP.Net is a whole issue all on its own. It utilizes JavaScript quite a bit for different controls and validation logic. One possibility is to use the ClientTarget=”downlevel” property of the <%@ Page %> tag. This does quite a few things but most importantly pushes the validation logic to the server. You will notice that all the different button types still use JavaScript to execute the post-back but in the case of the normal button it works anyway since it is an input element of type=”submit”. I will be looking further into ASP.Net without JavaScript in the coming months so expect more on this topic.

Focusing on accessibility of your web applications just makes good sense. It leads to better more standard compliant pages which is a definite plus but also makes your pages available to a greater readership. Target was just sued in the US over an inaccessible website so why not spend that extra little bit of time to save yourself issues in the future.

No Comments »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a comment