Closed
Bug 254483
Opened 21 years ago
Closed 21 years ago
'Object' tag fails with Windows registery classid value
Categories
(Core Graveyard :: Plug-ins, defect)
Tracking
(Not tracked)
VERIFIED
INVALID
People
(Reporter: andrejohn.mas, Unassigned)
References
()
Details
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040707 Firefox/0.8
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040707 Firefox/0.8
I recently tried fixing someone else's web page because the quicktime player
controls showed up in Internet Explorer, but not in Firefox. The site was using
the 'embed' tag and I tried making it support W3C HTML. Follows is what I found
out and had orginally posted to the Mozilla general mailing list:
'embed' is certainly supported by both IE and Firefox, and was introduced around
the time of Netscape 2 (according to a search on the net). Now it appears that
presence of a single attribute seems to be causing the problem, that of
'hidden'. This does not work:
<embed src="http://www.oyez.ca/Cabaret/spectacles/01Track.mp3" hidden="false"
height="22" width="110" bgcolor="#666666"></embed>
while this does:
<embed src="http://www.oyez.ca/Cabaret/spectacles/01Track.mp3" height="22"
width="110" bgcolor="#666666"></embed>
Further, it would seem that 'object' is the official W3C equivalent.
See: http://www.w3.org/TR/REC-html40/struct/objects.html#h-13.3.4
But trying to get to work consistently in IE and Firefox without
the embed is a bit of a nightmare. The following will work in Firefox, but not IE:
<OBJECT WIDTH="110" HEIGHT="22" type="audio/mp3"
data="http://www.oyez.ca/Cabaret/spectacles/01Track.mp3">
</OBJECT>
The following also works in Firefox and almost in IE (broken media
image):
<OBJECT
WIDTH="110" HEIGHT="22" type="audio/mp3"
data="http://www.oyez.ca/Cabaret/spectacles/01Track.mp3">
<PARAM NAME="type" VALUE="audio/mp3">
<PARAM NAME="src"
VALUE="http://www.oyez.ca/Cabaret/spectacles/01Track.mp3">
</OBJECT>
Now if I add the 'classid' attribute it works in IE but breaks in Firefox:
<OBJECT CLASSID="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"
WIDTH="110" HEIGHT="22" type="audio/mp3"
data="http://www.oyez.ca/Cabaret/spectacles/01Track.mp3">
<PARAM NAME="type" VALUE="audio/mp3">
<PARAM NAME="src"
VALUE="http://www.oyez.ca/Cabaret/spectacles/01Track.mp3">
</OBJECT>
This doesn't work in either:
<OBJECT CLASSID="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"
WIDTH="110" HEIGHT="22" type="audio/mp3"
data="http://www.oyez.ca/Cabaret/spectacles/01Track.mp3">
</OBJECT>
This also makes it work in both, but only because of legacy support
(it is the embed which it allows it to work):
<OBJECT CLASSID="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"
WIDTH="110" HEIGHT="22" type="audio/mp3"
data="http://www.oyez.ca/Cabaret/spectacles/01Track.mp3">
<PARAM NAME="type" VALUE="audio/mp3">
<PARAM NAME="src"
VALUE="http://www.oyez.ca/Cabaret/spectacles/01Track.mp3">
<EMBED WIDTH="110" HEIGHT="22" CONTROLLER="TRUE" TARGET="myself"
SRC="http://www.oyez.ca/Cabaret/spectacles/01Track.mp3"/>
</OBJECT>
I should note that Opera 7.5 only seems to handle the 'embed' element.
Had I simply used the 'embed' tag I wouldn't have had any issues.
Should Mozilla Firefox be handling the 'classid' content that it does not
recognise differently than what it is doing now?
Reproducible: Always
Steps to Reproduce:
1.
2.
3.
![]() |
||
Comment 1•21 years ago
|
||
> But trying to get to work consistently in IE and Firefox without the embed is a
> bit of a nightmare.
That's true, in large part thanks to IE's not handling the type attribute well.
The problem with classid is that it requests a particular _implementation_. If
you can't use the object with that exact classid to render the content, you
should show the alternate content for the <embed>.
Now classids starting with "clsid" refer to ActiveX components. Mozilla doesn't
support those, and no browser supports them on operating systems other than
Windows. So Mozilla has to show the alternate content for that object tag.
So to work around IE not using the type attribute, you can use the classid
version of <object> and nest the type version inside it (like your working
example, but with <object> instead of the embed).
Status: UNCONFIRMED → RESOLVED
Closed: 21 years ago
Resolution: --- → INVALID
Comment 2•20 years ago
|
||
*** Bug 287222 has been marked as a duplicate of this bug. ***
Comment 3•20 years ago
|
||
*** Bug 297631 has been marked as a duplicate of this bug. ***
Comment 4•20 years ago
|
||
*** Bug 298211 has been marked as a duplicate of this bug. ***
Comment 5•20 years ago
|
||
*** Bug 316540 has been marked as a duplicate of this bug. ***
Reporter | ||
Comment 6•20 years ago
|
||
Would it help if Mozilla simply gave priority to the "type" attribute and ignored the classid field?
![]() |
||
Comment 7•20 years ago
|
||
That would:
1) Violate the HTML spec
2) Break quite badly in some cases (think crashes, etc).
Comment 8•20 years ago
|
||
*** Bug 319190 has been marked as a duplicate of this bug. ***
Comment 9•20 years ago
|
||
*** Bug 321122 has been marked as a duplicate of this bug. ***
Comment 10•20 years ago
|
||
*** Bug 322594 has been marked as a duplicate of this bug. ***
Comment 11•20 years ago
|
||
(In reply to comment #6)
> Would it help if Mozilla simply gave priority to the "type" attribute and
> ignored the classid field?
>
Opera handles this situation nicely imo. Mozilla's behavior is very annoyting (even if its IE's fault the we have this problem.)
It appears Opera ignores the classid attribute if the value contains clsid:
The browser can't ignore the classid altogether though because of classid="java:file.class" for loading applets.
Updated•3 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•