Javascript 'history' object unavailable in Mozilla/Gecko/Netscape in strict mode??

P

Peter Bremer

Hi all,

I've written this little piece of code, which doesn't seem to work in
Mozilla 1.5. I haven't tried it on other Gecko browsers, but I've found
some indication that Netscape 6+ has the same problem. Internet Explorer 6
and Opera 7 have no problems with it.

<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.1//EN'
'http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd'>
<script>document.write (window.history.length);</script>

Mozilla returns the error "window.history has no properties".
Extensive searching on internet gave no help, even Mozilla's own DOM
Reference says nothing about it:
http://mozilla.org/docs/dom/domref/dom_window_ref25.html

Can anybody help me, and tell me how to emulate 'history.back()' without
using the history object?

Thanks, Peter
 
P

Peter Bremer

rf said:
Explorer

<p>Press your browsers "back" button to return to where you came from</p>

Cheers
Richard.

Hehehehe.... funnyyyyy... :)
Okay, let me rephrase: Can anybody help me, and tell me how to emulate
'history.back()' USING JAVASCRIPT CODE, without using the history object?
 
V

Vjekoslav Begovic

Vjekoslav Begovic said:
Perhaps using document.location and document.refferer properties?


Sorry, window.location and document.referer, of course.
 
B

brucie

Can anybody help me, and tell me how to emulate 'history.back()' without
using the history object?

every browser i've ever seen already has the ability to return to the
previous resource built in and it works which is a good thing
considering its the most used function after the humble little link.

you are trying to re-invent the wheel and it will be at best square.
you are wasting your time.
 
R

rf

Peter Bremer said:
Hehehehe.... funnyyyyy... :)
Okay, let me rephrase: Can anybody help me, and tell me how to emulate
'history.back()' USING JAVASCRIPT CODE, without using the history object?

You can not.

Cheers
Richard.
 
R

rf

rf said:
And where precicely is document.referer defined client side?

Belay that. You are right. Document.referer could be refered[sic] to client
side to insert the relevent link into the document *provided* the browser
provides said datum in its request for the page.

Cheers
Richard.
 
P

Peter Bremer

Jacqui or (maybe) Pete said:
I suppose you'll want to duplicate the maximize, minimise, print,
forward, etc functions of the browser too? Why?

Anyway - a javascript 'solution' is given here:
http://www.foad.org/~abigail/HTML/Misc/back_button.html

I'm sorry Jacqui or (maybe) Pete, I don't know if you have read the message,
but I discovered that the HISTORY object seems not supported by Gecko in
strict mode. And that is exactly the object that is used in the 'solution'
you point me to.
You are right to argue the use of a history.back() function in JavaScript.
What I want to do, is create a sort of 'wizard' application, such as you
commonly see in Windows when going through complex tasks. These
applications often have a 'next' button, going to the next step, and a
'previous' button going to the previous step.
Of course I could create all kinds of complex scripts for the 'previous'
button, retrieving previously entered information from cookies, session
variables or database fields, but a simple 'history.back()' JavaScript
function also does the trick. That is, on every JavaScript-enabled browser
except for Gecko in strict mode...
Now, before resorting to writing complex code for that one set of browsers,
I was trying to find out if there was another simple way to go 'back in
history'...
 
L

Lasse Reichstein Nielsen

Peter Bremer said:
I've written this little piece of code, which doesn't seem to work in
Mozilla 1.5. I haven't tried it on other Gecko browsers, but I've found
some indication that Netscape 6+ has the same problem. Internet Explorer 6
and Opera 7 have no problems with it.

<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.1//EN'
'http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd'>
<script>document.write (window.history.length);</script>

Mozilla returns the error "window.history has no properties".

My Mozilla Firebird v0.6 has no problems with it.
Can you show a live page where it fails?

/L
 
J

Jacqui or (maybe) Pete

"Peter Bremer" said:
I'm sorry Jacqui or (maybe) Pete, I don't know if you have read the message,
but I discovered that the HISTORY object seems not supported by Gecko in
strict mode. And that is exactly the object that is used in the 'solution'
you point me to.
....
The source I pointed you to uses 'history.back()' and works fine in
Mozilla 1.5b.
 
P

Peter Bremer

Okay everybody, thanks for your support! I've found the solution to my
problem...
It seems that this is indeed a bug in Mozilla 1.5a. I've just downloaded
the newest 'nightly build' (1.5b) and it works there...
 
J

Jacqui or (maybe) Pete

"Peter Bremer" said:
Okay everybody, thanks for your support! I've found the solution to my
problem...
It seems that this is indeed a bug in Mozilla 1.5a. I've just downloaded
the newest 'nightly build' (1.5b) and it works there...
Bloody javascript debugger seems to be broken in that version,
though :0(
 
N

nice.guy.nige

While the city slept, Peter Bremer <-> feverishly typed:

[...]
You are right to argue the use of a history.back() function in
JavaScript. What I want to do, is create a sort of 'wizard'
application, such as you commonly see in Windows when going through
complex tasks. These applications often have a 'next' button, going
to the next step, and a 'previous' button going to the previous step.

Now... I assume you know the URI that the 'next' button is going to take the
user to, and that will have to be coded into each page. You say this is a
wizard style thing, so I'm also going to assume it is a sequential affair -
stage 1 -> stage 2 -> stage 3 -> finished - that kind of thing... does it
not follow that you should know where the user came from, and can then code
that URI into the 'previous' button. Eg. You are at stage 2 of the wizard.
<p><a href="stage1.html">Previous</a> | <a
href="stage3.html">Next</a></p>... that sort of thing...

Just a thought... feel free to tell me if I am barking up the wrong tree!

Cheers,
Nige

--
Nigel Moss.

Email address is not valid. (e-mail address removed). Take the dog out!
http://www.nigenet.org.uk | Boycott E$$O!! http://www.stopesso.com
"How strange the change from major to minor..."
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,812
Messages
2,569,694
Members
45,478
Latest member
dontilydondon

Latest Threads

Top