> And if you don't have some server-based alternative, use something
> like:
> <a href="#" onClick="some_function('pagename');return false;">Text</a>
> and if the user has javascript turned off, the link will still have no
> effect except of appending "#" to the URL.
... and making the user wonder why the link didn't work (probably after they
wait for a couple of minutes for the "new page" to load).
... and shoving the user back up to the top of the page if they had scrolled
down to get to the link.
> Of course if you want some
> CGI fallback for js fault, then keep the 'backup link', but if it's to
> be a page that says "Sorry, you need Javascript", better if it does
> nothing instead.
I disagree. When the user expects something to happen, the system shouldn't
silently fail on them. A server side alternative is best, but an error
message beats nothing at all.
Another option is to generate the link with JavaScript in the first place -
after testing that all the needed features are available.

Signature
David Dorward <http://blog.dorward.me.uk/> <http://dorward.me.uk/>
Home is where the ~/.bashrc is
jitendramr - 29 Dec 2005 12:25 GMT
Thanks all for a very prompt reply!
: (
1. Actually i m not worried about javascript blocking as Javascript is
a prerequieist for my application. So the user is aware of this.
2. I cant use '#' as IE will treat it as a page location and scroll up
the page to the top.
3. i am not using any server side at this level as this only requires
to open another html page a new window....
: )
4. I can use 'href=somepage.html' (but i m doubtful of any flickering
as we are calling 2 pages - 1 on href and 2 onClick, pls correct me)
i ll let u know abt this....thnx again
i have to dliver the app day after....hope it will work
c ya
RobG - 29 Dec 2005 12:58 GMT
> Thanks all for a very prompt reply!
>
[quoted text clipped - 4 lines]
> 2. I cant use '#' as IE will treat it as a page location and scroll up
> the page to the top.
Hence the suggestion to use - return false - in the onclick, it will
stop the browser following the link (i.e. in this case, going to the
top of the page).
> 3. i am not using any server side at this level as this only requires
> to open another html page a new window....
>
> : )
> 4. I can use 'href=somepage.html' (but i m doubtful of any flickering
> as we are calling 2 pages - 1 on href and 2 onClick, pls correct me)
If you use return false the HREF will not be followed regardless of
what you put in there. Just don't use javascript:void().
[...]

Signature
Rob
jitendramr - 29 Dec 2005 13:24 GMT
I see...i ll give a try...
Thanks dear
Randy Webb - 29 Dec 2005 22:51 GMT
RobG said the following on 12/29/2005 7:58 AM:
>> Thanks all for a very prompt reply!
>>
[quoted text clipped - 18 lines]
> If you use return false the HREF will not be followed regardless of what
> you put in there. Just don't use javascript:void().
<a href="somePage.html" onclick="return openWindow('this.href')">
function openWindow(newURL){
...
return false
}
Then, if anything in the function errors, the normal navigation takes
place. It is even a good practice when creating links with script. It
allows *something* to happen even when something breaks.

Signature
Randy
comp.lang.javascript FAQ - http://jibbering.com/faq & newsgroup weekly
Javascript Best Practices - http://www.JavascriptToolbox.com/bestpractices/
jitendramr - 30 Dec 2005 07:17 GMT
thnx randy
nothingrows - 30 Dec 2005 23:33 GMT
use <a href="javascript:;"
onClick="some_function('pagename')">Text</a> :)
Lee - 31 Dec 2005 00:51 GMT
nothingrows said:
>use <a href="javascript:;"
>onClick="some_function('pagename')">Text</a> :)
No, don't.
Read the rest of the thread.
Randy Webb - 31 Dec 2005 00:51 GMT
nothingrows said the following on 12/30/2005 6:33 PM:
> use <a href="javascript:;"
> onClick="some_function('pagename')">Text</a> :)
And then test it in Firefox.... There is a thread not 3 or 4 days old
where that instituted a problem in Mozilla based browsers where the
javascript: URI caused the Javascript Console to open even when there
were no errors.
Now, please read this groups FAQ with regards to quoting, replying, and
the javascript: pseudo-protocol before suggesting it's improper use.

Signature
Randy
comp.lang.javascript FAQ - http://jibbering.com/faq & newsgroup weekly
Javascript Best Practices - http://www.JavascriptToolbox.com/bestpractices/
Christopher Benson-Manica - 30 Dec 2005 20:53 GMT
> I disagree. When the user expects something to happen, the system shouldn't
> silently fail on them. A server side alternative is best, but an error
> message beats nothing at all.
That's my personal opinion as well, but it seems that there is a trend
(if Safari and my copy of the IE 7 beta indeed constitute a "trend")
toward hiding script errors from users not actively searching for
them.

Signature
Christopher Benson-Manica | I *should* know what I'm talking about - if I
ataru(at)cyberspace.org | don't, I need to know. Flames welcome.
David Dorward - 31 Dec 2005 08:19 GMT
>> I disagree. When the user expects something to happen, the system
>> shouldn't silently fail on them. A server side alternative is best, but
>> an error message beats nothing at all.
> That's my personal opinion as well, but it seems that there is a trend
> (if Safari and my copy of the IE 7 beta indeed constitute a "trend")
> toward hiding script errors from users not actively searching for
> them.
The trouble with browsers alerting about script errors is that they can't
distinguish between errors that matter, and errors that don't. There are
quite a few pages where moving the mouse over elements fires off
onmouseover events that spew errors to the JavaScript console, and shoving
these in the user's face would be ... unpleasant.
There is a difference between a script author writing a sensible fail path
in his script, and a scripting engine author displaying all the debug
information to the average user.

Signature
David Dorward <http://blog.dorward.me.uk/> <http://dorward.me.uk/>
Home is where the ~/.bashrc is
bwucke@gmail.com wrote :
> RobG napisal(a):
>
[quoted text clipped - 13 lines]
> like:
> <a href="#" onClick="some_function('pagename');return false;">Text</a>
Such pseudo-link is also considered bad practice.
> and if the user has javascript turned off, the link will still have no
> effect except of appending "#" to the URL.
No. It does bring the page all the way up.
What's important is to use a link when such link leads somewhere, when
there is a real url, otherwise you're misusing links.
Gérard
--
remove blah to email me