473,856 Members | 1,646 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Problems with JS turned off?

I'm working on a web site that could use some control using js but am
concerned about what problems I may have with potential users having
their js turned off. Has anyone had any serious problems with this
sort of thing? I know some of these potential users are with big
companies and am wondering if anyone had real problems with that.

Jul 23 '05 #1
55 4237
Jc
drhowarddrfine wrote:
I'm working on a web site that could use some control using js but am
concerned about what problems I may have with potential users having
their js turned off. Has anyone had any serious problems with this
sort of thing? I know some of these potential users are with big
companies and am wondering if anyone had real problems with that.


Worst case, a user with Javascript disabled is unable to use your site.
However, this is a problem that can be compensated for, by making your
web site "degrade" gracefully. This means more work for you, the
developer, but it provides the intended experience for a wider range of
users, including those whose browser either doesn't support Javascript,
or has it disabled.

How much work you spend making your website usable on older versions of
browsers or those with Javascript disabled really depends on your
target audience. Optimally, your site will work on the broadest
possible range of browsers and capabilities. However, in the interests
of development time, you may want to target a percentage (say, 95%) of
the site's audience, which can be determined by keeping an eye on
server logs.

Jul 23 '05 #2
"Jc" <go****@weinric hs.com> writes:
However, in the interests of development time, you may want to
target a percentage (say, 95%) of the site's audience, which can be
determined by keeping an eye on server logs.


The only problem with this approach is that server logs tends to be
self fulfilling. If you make a site which doesn't work with Javascript
disabled, your server logs will tell you that only people with
Javascript enabled use your site.

Making a page degrade gracefully isn't as hard as you make it sound,
if one thinks of it from the start.

/L 'Pure HTML is 100% accessible. All you an do is detract from that'
--
Lasse Reichstein Nielsen - lr*@hotpop.com
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleD OM.html>
'Faith without judgement merely degrades the spirit divine.'
Jul 23 '05 #3
> From: Lasse Reichstein Nielsen <lr*@hotpop.com >
Making a page degrade gracefully isn't as hard as you make it sound,
if one thinks of it from the start.
/L 'Pure HTML is 100% accessible. All you can do is detract from that'


I agree with you 100% with great emphasis. For example, a few years ago
Yahoo modified their Web-based services (mail and clubs->groups) to
where users couldn't join new groups without saying what word is in a
GIF or JPG image. Since my access from home is only via VT100 (text
only) dialup into Unix shell account, then running lynx (text-mode
browser) from there into the Web, I couldn't see any images, I couldn't
join any new groups from home. So that meant that whenever I wanted to
join a new group I needed to make a trip to the public library, sign up
for an hour of "computer" time, wait up to an hour for that hour to
begin, then rush everything I wanted to do during that hour. Then later
at home I could at my leisure I could browse messages in the Group and
post responses, except if the invitation to the group expired by the
time I could get to the library then my trip was wasted and I'd have to
ask for a new invitation and hope I could get to the library again
before the new invitation expired. But at least once I got into a
group, I could use most of its text-based services from home. And their
Mail service didn't allow replying to messages without JavaScript, so
if I wanted to reply I needed to copy the text of the message and the
From: address etc. to a local edit, compose my response locally, then
go to the Compose (new message) feature in Yahoo! Mail and paste in the
address and Subject and my response. It didn't properly link my
response with old message-ID, but at least it basically worked.

Then about a year ago Yahoo changed their Mail service so it's almost
totally unusable without JavaScript. I can log in and see a listing of
how many messages are new in each folder, and I can go to my InBox or
other folder and see all the messages, but there's no way to see which
of the messages in a folder are new and which are old so there's no
reasonable way to visit all the spam so they no longer show as new
messages in the folder summary page, and there's no way to complain
about spam because the SPAM button is now JavaScript, and there's no
way to send outgoing e-mail (either Compose new or Reply to old)
because that requires JavaScript, and there's no way to move spam
messages to another folder or delete them to get them out of my InBox
because both features require JavaScript, and there's no way to move my
legitimate messages out of InBox to get them away from spam, and
virtually all the other Yahoo! Mail features ar likewise unusable from
home because they require JavaScript. I'm totally pissed at Yahoo's
decision to require JavaScript for virtually *all* their Yahoo! Mail
features, making the service virtually useless to me. It's nice that
they increased their mailbox quota from 6+1 MB to 100 MB, and then
increased it again to a gigibyte or more, but that does virtually no
good if the whole service is unusable from home.

If you're wondering why I'm browsing a JavaScript newsgroup if I have
no access to javascript: Well last Fall one of my instructors at De
Anza College gave me his old laptop computer, which has Java on it, and
it's been very useful for the Java class he was teaching at the time,
and for the new J2EE class I'm taking now, and just yesterday I
realized that since the laptop has NetScape which supports JavaScript,
then even though I don't have access to JavaScript online, I *do* have
access to JavaScript locally using
file://localhost/directory.../filename.html, so I now *can* develop Web
pages that make use of JavaScript locally and then upload them to the
net and install them and hope they still work for remote users, so
yesterday I taught myself JavaScript from an online tutorial and
created my first interesting JavaScript WebPage and uploaded it:
http://members.tripod.com/MaasInfo/New/2005.6.13a.html
So today I came online (in VT100 text mode of course) to look for the
JavaScript FAQ that I saw listed yesterday when I was browsing this
newsgroup for JS-programming tips, and discovered your article which I
wished to respond to (above) before continuing to look for the FAQ.
Jul 23 '05 #4
If javascript is turned off, there should be no problems. Your users
shouldn't even realize they are "missing" anything.

Problems arise if you load more javascript than your visitor can handle. I
split my users into all or nothing, because it is more work than I want to
go through to sniff out every platform and browser.

So in the head of my pages I load a script that tests for
document.implem entation.hasFea ture('html','1. 0');
and if it returns true the serious javascript gets loaded; otherwise, no
harm done.

Jul 23 '05 #5
drWot you may have the best option. I'm a little suspicious of this
concern about the use of js when, from everything I've read, 94% or so
of all users have js turned on. Although you could say something like
"now you're turning away 6 out of every 100 viewers" but, as far as I
can figure, if they don't have js on, they probably aren't ordering
online anyway and they can just phone it in.

Some may flame me for that statement but I'm see less need for pulling
my hair out to code for the minority and have-nots and those lacking
knowledge.

Jul 23 '05 #6
On 13 Jun 2005 17:39:30 -0700, in comp.lang.javas cript
"drhowarddrfine " <ro*******@gmai l.com> wrote:
| I'm working on a web site that could use some control using js but am
| concerned about what problems I may have with potential users having
| their js turned off. Has anyone had any serious problems with this
| sort of thing? I know some of these potential users are with big
| companies and am wondering if anyone had real problems with that.


Simply use the noscript tag to inform user that they will not have
full access to the site.

<script type="text/javascript">
....
your scripts
.....
</script>
<noscript>
....
message to user with javascript disabled
....
</noscript>
---------------------------------------------------------------
jn******@yourpa ntsyahoo.com.au : Remove your pants to reply
---------------------------------------------------------------
Jul 23 '05 #7
Jeff North wrote:
<snip>
Simply use the noscript tag to inform user that they will
not have full access to the site.

<script type="text/javascript">
...
your scripts
....
</script>
<noscript>
...
message to user with javascript disabled
...
</noscript>


One thing that is apparent form searching the comp.lang.javas cript
archives for NOSCRIPT is that its use is very rarely proposed (at least
in the current century), and almost never by the more experienced
contributors.

The reason for this is simply that the NOSCRIPT element is not capable
of contributing to the problems of browser scripting for the internet,
and has not been for many years.

The NOSCRIPT element is based on a premise that there are only two
outcomes in browser scripting: 1) The script will work (the environment
supports scripting and the script will fully achieve what is expected of
it, and 2) The environment does not support scripting (it is unavailable
or disabled) so no script will execute.

That premise was true when NOSCRIPT was introduced because there was
only one script supporting browser environment so a script either would
be executed and work, or it would not (assuming that bugs/errors never
got past testing).

However, for some considerable time the problems of browser scripting
have arisen form the availability of diverse client-side environments
and that means that all internet browser scripts face three possible
outcomes: 1) The script will execute and be fully supported by the
browser environment in which it finds itself, 2) The script will execute
but find that it is not supported by the browser environment (so it will
fail to fully execute (degrade under its own control), or error-out if
poorly written), and 3) The environment does not support scripting (it
is unavailable or disabled).

The middle option, of a script that is executed but cannot do what it
intended in the environment in which it finds itself, is where the art
of browser script design expresses itself. The concepts of scripted
enhancement (that are not harmful/problematic when they cannot act) and
clean degradation to fully viable underlying HTML (and server-side
alternatives) are employed to make sense of this middle option. These
are script design considerations that will feature in any quality
Internet browser script.

Having covered that middle option with good script design (and suitably
cautious/defensive implementation) the NOSCRIPT element has become
redundant. Whatever made sense in the context of a script that found
that it could achieve nothing in a scriptable environment that did not
support the features/actions that it wanted to perform makes just as
much sense in an environment where scripting is disabled/unavailable (so
the script never could achieve anything). Thus a quality Internet
browser script needs no NOSCRIPT element by design.

And there is certainly no point having a NOSCIRPT element telling a user
that they need to enable javascript in order to view a site unless you
can guarantee that enabling javascript will facilitate their viewing of
that site, which is impossible.

Richard.
Jul 23 '05 #8
On Thu, 16 Jun 2005 12:51:06 +0100, in comp.lang.javas cript "Richard
Cornford" <Ri*****@litote s.demon.co.uk> wrote:
| Jeff North wrote:
| <snip>
| > Simply use the noscript tag to inform user that they will
| > not have full access to the site.
| >
| > <script type="text/javascript">
| > ...
| > your scripts
| > ....
| > </script>
| > <noscript>
| > ...
| > message to user with javascript disabled
| > ...
| > </noscript>
|
| One thing that is apparent form searching the comp.lang.javas cript
| archives for NOSCRIPT is that its use is very rarely proposed (at least
| in the current century), and almost never by the more experienced
| contributors.
Really?
I'm sure the WAI consortium would be interested in why they are
wasting their time, and effort, in invalidating sites that do not have
the <noscript> tag defined where any scripting language appears on a
page.
| The reason for this is simply that the NOSCRIPT element is not capable
| of contributing to the problems of browser scripting for the internet,
| and has not been for many years.
|
| The NOSCRIPT element is based on a premise that there are only two
| outcomes in browser scripting: 1) The script will work (the environment
| supports scripting and the script will fully achieve what is expected of
| it, and 2) The environment does not support scripting (it is unavailable
| or disabled) so no script will execute.
|
| That premise was true when NOSCRIPT was introduced because there was
| only one script supporting browser environment so a script either would
| be executed and work, or it would not (assuming that bugs/errors never
| got past testing).
|
| However, for some considerable time the problems of browser scripting
| have arisen form the availability of diverse client-side environments
| and that means that all internet browser scripts face three possible
| outcomes: 1) The script will execute and be fully supported by the
| browser environment in which it finds itself, 2) The script will execute
| but find that it is not supported by the browser environment (so it will
| fail to fully execute (degrade under its own control), or error-out if
| poorly written), and 3) The environment does not support scripting (it
| is unavailable or disabled).
So far you have not invalidated the use of the <noscript> tag. In fact
you have shown why you should use it.

As you point out below, items 1 and 2 are where the script will be
executed. The handling of the scripts compatability etc should be
programmed by the programmer, within the executable script.

Item 3 is where the script will not execute.

So you still have the binary option of the script executing or not.
| The middle option, of a script that is executed but cannot do what it
| intended in the environment in which it finds itself, is where the art
| of browser script design expresses itself. The concepts of scripted
| enhancement (that are not harmful/problematic when they cannot act) and
| clean degradation to fully viable underlying HTML (and server-side
| alternatives) are employed to make sense of this middle option. These
| are script design considerations that will feature in any quality
| Internet browser script.
|
| Having covered that middle option with good script design (and suitably
| cautious/defensive implementation) the NOSCRIPT element has become
| redundant. Whatever made sense in the context of a script that found
| that it could achieve nothing in a scriptable environment that did not
| support the features/actions that it wanted to perform makes just as
| much sense in an environment where scripting is disabled/unavailable (so
| the script never could achieve anything). Thus a quality Internet
| browser script needs no NOSCRIPT element by design.
Tell that to the W3C consortium.
http://www.w3.org/TR/html4/interact/....html#h-18.3.1

In the following example, a user agent that executes the SCRIPT will
include some dynamically created data in the document. If the user
agent doesn't support scripts, the user may still retrieve the data
through a link.

<SCRIPT type="text/tcl">
...some Tcl script to insert data...
</SCRIPT>
<NOSCRIPT>
<P>Access the <A href="http://someplace.com/data">data.</A>
</NOSCRIPT>
--------------
Can you give me an example of where the same thing can be achieved
without the need for the <noscript> tag.
| And there is certainly no point having a NOSCIRPT element telling a user
| that they need to enable javascript in order to view a site unless you
| can guarantee that enabling javascript will facilitate their viewing of
| that site, which is impossible.


Debatable.
---------------------------------------------------------------
jn******@yourpa ntsyahoo.com.au : Remove your pants to reply
---------------------------------------------------------------
Jul 23 '05 #9
Jeff North wrote:
In the following example, a user agent that executes the SCRIPT will
include some dynamically created data in the document. If the user
agent doesn't support scripts, the user may still retrieve the data
through a link.
<SCRIPT type="text/tcl">
...some Tcl script to insert data...
</SCRIPT>
<NOSCRIPT>
<P>Access the <A href="http://someplace.com/data">data.</A>
</NOSCRIPT>


This is a good illustration of the problem.
My browser shows nothing at all, because it doesn't understand text/tcl
script, yet it is script enabled so it doesn't show the <noscript> content
either.

--
Matt Kruse
http://www.JavascriptToolbox.com
http://www.AjaxToolbox.com
Jul 23 '05 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
3540
by: Pedro Fonseca | last post by:
Greetings everyone! I'm porting my applications to PHP5 and I've stumbled on yet another problem. I'll try to simplify things a bit. I have a main script that is being executed (index.php, PHP5 script) and that is including 2 other files: config.inc (PHP5 script, for the configuration) and adodb.inc.php (PHP4 script, ADOdb functionality, though it could be any other PHP4 script). On php.ini, error_reporting = E_ALL|E_STRICT. These are...
3
1647
by: Simon Wigzell | last post by:
My client has many forms on his Business website. They all use the "onsubmit" verification method e.g. <form ......... onsubmit="return FormValidator(this);"> <script> function FormValidator(TheForm) { if (TheForm..value == "") {
8
13218
by: John Welch | last post by:
I have a command button with the following code: DoCmd.OpenForm "frmSearchAssignments", , , "SearchAssignmentID = 1" (SearchAssignmentID is the PK, auto number) When it runs, the form opens but shows all records, rather than going to the one I want. If I look at the form in design view, it shows 'SearchAssignmentID=1' (without quotes) as the filter in the properties list. frmSearchAssignments is bound to a query qrySearchAssignments....
5
1434
by: Dan Smith | last post by:
When I try to create a new C# Web Reference in Visual Studio 2003, I get an error message "The proxy settings on this computer are not configured correctly for web discovery. ..." This web reference is to a service on my machine - http://localhost/... - so I don't know why any proxy configuration should be necessary. Doing the same thing in Visual Studio 2002 works fine (i.e., no error about "proxy settings"). However, when I update...
1
3983
by: Daniel Passwater via DotNetMonster.com | last post by:
I've written an app in C# in the compact framework. I've got a serial connection with a device running embedded C. We are using no flow control. That's not optional at this point. We are talking at 19200 baud, 8 bits, no parity, one stop bit. I can't get stable communication into my side. Symptoms: If we put interrupts in the embedded C (also not an option), I get my data just fine. However, without the interrupts, I only get the first byte....
2
1444
by: Jeff S | last post by:
No question here; just information that anyone running ZoneAlarm on a development machine may find useful as you develop your ASP.NET apps - (or for those of you who are assisting users who may be running ZoneAlarm.). To be brief, running ZoneAlarm Pro (and possibly other versions) and an ASP.NET application simultaneously will result in a new session of your application being created for every single HTTP request. If you have any...
2
1506
by: Chris Newby | last post by:
We are running Win2K / IIS5 in an Active Directory setup. We are running an ASP.NET application that is configured to use Integrated Security (with Anonymous and Basic turned off) and that has impersonation turned on in its web config. Users of our application are logged into workstations on within the same directory. Our ASP.NET application at some point is trying to read a file that exists on another server. If the application is...
27
2140
by: CTI | last post by:
I got problems when I want to make a MDE file. The app. got a lack of memory. Bart Access 2003
34
5387
by: Alexnb | last post by:
Gerhard Häring wrote: No, it didn't work, but it gave me some interesting feedback when I ran it in the shell. Heres what it told me: Traceback (most recent call last): File "<pyshell#10>", line 1, in <module> os.startfile("C:\Documents and Settings\Alex\My Documents\My
0
9918
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, weíll explore What is ONU, What Is Router, ONU & Routerís main usage, and What is the difference between ONU and Router. Letís take a closer look ! Part I. Meaning of...
0
9763
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10697
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10786
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
7097
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5762
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5959
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
4578
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
4175
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.