Closed
Bug 264525
Opened 20 years ago
Closed 12 years ago
onbeforeunload capability not detectable
Categories
(Core :: DOM: Events, enhancement)
Tracking
()
RESOLVED
WORKSFORME
mozilla9
People
(Reporter: rob, Unassigned)
References
Details
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20040913 Firefox/0.10.1
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20040913 Firefox/0.10.1
Using object detection rather than browser sniffing, there is no way to know
that Firefox supports the onbeforeunload event. If it is not assigned a value,
typeof(window.onbeforeunload) returns "undefined" and unfortunately so does
Opera (which does not support the event). If it is assigned a value,
typeof(window.onbeforeunload) returns "String" and unfortunately so does Opera.
(IE returns "String" if it is set and "object" if it is not.)
Reproducible: Always
Steps to Reproduce:
At this point, still not wanting to do browser detection, I will need to check
onbeforeunload before I set it, and see whether it is an object. This means I
will only be able to use my onbeforeunload in IE, and not fully use the
capabilities of Firefox.
Comment 1•20 years ago
|
||
javascript:window.onbeforeunload = function() { alert(5); }; alert(typeof
window.onbeforeunload)
I get "function", not "string".
Why do you need to check for onbeforeunload support before setting the
onbeforeunload function, anyway?
Updated•20 years ago
|
Assignee: firefox → events
Component: General → DOM: Events
Product: Firefox → Browser
QA Contact: firefox.general → ian
Version: unspecified → 1.7 Branch
If I express the script as an anonymous function rather than a string, I get
"function" also. The problem is I still get the same thing from Opera.
The overall issue is, I am trying to detect whether the browser supports the
onbeforeunload event or not. I can check before or after I set it, I just need
to know if the browser is going to support it. So far, in any way I can figure
out to test it, Firefox and Opera are always reporting the same values, even
though Firefox supports it and Opera doesn't. (Try your script in Opera --
you'll still get "function", but if you leave the page, you won't get your "5".)
Updated•20 years ago
|
Severity: minor → enhancement
Status: UNCONFIRMED → NEW
Ever confirmed: true
Updated•15 years ago
|
Assignee: events → nobody
QA Contact: ian → events
Many time I wish we had this, I put a suggestion a whatwg
http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2010-September/028634.html
jonas sicking recommend to implement
'onbeforeunload' in document.body ==> true
Comment 5•14 years ago
|
||
Dupe of #414853 ?
Comment 6•12 years ago
|
||
Fixed in bug 659350.
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → WORKSFORME
Target Milestone: --- → mozilla9
You need to log in
before you can comment on or make changes to this bug.
Description
•