Closed
Bug 123800
Opened 23 years ago
Closed 21 years ago
mozilla displaying server-side imagemap
Categories
(Core :: Layout, defect, P2)
Core
Layout
Tracking
()
RESOLVED
INVALID
mozilla1.4beta
People
(Reporter: L.Wood, Assigned: bzbarsky)
References
()
Details
A client-side imagemap with server-side map fallthrough can make mozilla display the server-side imagemap if the client-side imagemap lacks a shape=default. This is something of a change in behaviour from Netscape. If there's no ISMAP tag, following the HREF is fine. If there's an ISMAP and we're in quirks mode, it's not what I would expect. (and are login email addresses now lower-case only? I had a devil of a time logging in.)
Comment 1•22 years ago
|
||
-> ImageLib
Assignee: asa → pavlov
Component: Browser-General → ImageLib
QA Contact: doronr → tpreston
Comment 2•22 years ago
|
||
-> layout
Assignee: pavlov → attinasi
Component: ImageLib → Layout
QA Contact: tpreston → petersen
Comment 3•22 years ago
|
||
Uh, why does ismap "suggest that's a bad idea"? I realize the current method isn't backwards-compat with NS4.x, but it doesn't seem out of the bounds of reasonable interpretation, either...
Reporter | ||
Comment 4•22 years ago
|
||
The ISMAP tag indicates that the enclosing HREF link is to the imagemap itself, not to a default link to be followed. Thus, following the link and displaying the imagemap content is a bad idea and (as the ISMAP tag indicates) should be avoided; if the imagemap specifies no default behaviour, do nothing instead when the user clicks on a default region.
Assignee | ||
Updated•22 years ago
|
Status: UNCONFIRMED → NEW
Ever confirmed: true
Updated•22 years ago
|
Priority: -- → P3
Target Milestone: --- → Future
Assignee | ||
Comment 5•21 years ago
|
||
So the question is, is this quirk something that would affect enough sites to make it worth the complexity and code needed to implement it? My feeling is "no".
Reporter | ||
Comment 6•21 years ago
|
||
I'm not sure that my mentioning of quirks mode makes it a 'quirk'. The ISMAP tag indicates how (and that) the surrounding HREF content should be parsed. Internet Explorer doesn't have this problem; IE is fundamentally better at image-map handling. Lynx is better at rendering loaded image maps into a list of text links.
Assignee | ||
Comment 7•21 years ago
|
||
The problem is that the entire definition of ISMAP is fundamentally incompatible with the DOM event model. There is a click. This click bubbles. If it bubbles up to the <a>, the <a> will be followed. Unless we want to make the case that an image which has an imagemap should cancel click events even in cases when the click is on an inactive area (bizarre definition of "inactive").
Reporter | ||
Comment 8•21 years ago
|
||
It's how it bubbles. You don't necessarily want to cancel the click, but could interpret the href in light of the ISMAP tag. I'd expect fallthrough from client-side imagemap to server-side imagemap if the point clicked is unspecified in client-side usemap. The maps don't have to be identical; you could have static areas in the client-side map, and dynamic areas elsewhere in the server-side map. Under the current behaviour, that sort of elegance is simply not possible.
Assignee | ||
Comment 9•21 years ago
|
||
Ah, ok. So you just want server-side imagemap support in general. Sure. Can do.
Reporter | ||
Comment 10•21 years ago
|
||
You've got it - the fallthrough of an unspecified default in the client map is simply the most obvious case of this client-to-server-side map fallthrough failing, and it should be supported. We shouldn't be falling through to displaying the server-side map, but should be parsing that as a map instead. (Think of the client map as a layer in front of the server map layer in front of the image, if that helps. Right now, you can have either a single client or server-side layer in front of the image, but you can't layer them together.)
Assignee | ||
Comment 11•21 years ago
|
||
> but should be parsing that as a map instead. Um... That's not what the HTML spec says about how server-side imagemaps work. From http://www.w3.org/TR/html401/struct/objects.html#h-13.6: Server-side. When a user activates a region of a server-side image map with a mouse, the pixel coordinates of the click are sent to the server-side agent specified by the href attribute of the A element. The server-side agent interprets the coordinates and performs some action. So if you have: <a href="foo"><img ismap></a> And I click at the point (10, 20) on the image, Mozilla should just load: "foo?10,20" (resolving it relative to the document base URI, of course). What exactly gave you the idea that the _client_ has anything to do with the processing of _server_ side imagemaps? Is there something I'm missing here? Or is this just a "you should do what IE does" kinda thing?
Reporter | ||
Comment 12•21 years ago
|
||
oops, mea culpa - replace 'parsing' with 'treating'. In the default case I opened this on, the click ?x,y on an unspecified region is not being passed through to the server-side map. I'm arguing that if the clicked coordinates aren't covered by a region in a client-side map (i.e. there is no default region, which otherwise covers everything that is left) and a server-side map is specified (ismap and a href) then those coordinates should be passed through for server-side processing. Clearer?
Assignee | ||
Comment 13•21 years ago
|
||
OK, that's what I thought you meant, till comment 10. ;) Taking bug; this should not be that hard to do...
Assignee: attinasi → bzbarsky
OS: Linux → All
Priority: P3 → P2
Target Milestone: Future → mozilla1.4beta
Assignee | ||
Comment 14•21 years ago
|
||
Hmm.. So I just loaded http://www.ee.surrey.ac.uk/Personal/L.Wood/mozilla/bug-3.html, clicked on a part of the image not covered by an explicit imagemap area, and got taken to http://www.ee.surrey.ac.uk/Personal/L.Wood/mozilla/pocket.map?20,31 This seems correct to me. What is the problem again, exactly?
Reporter | ||
Comment 15•21 years ago
|
||
http://www.ee.surrey.ac.uk/Personal/L.Wood/mozilla/pocket.map?20,31 displayed onscreen in mozilla the imagemap contents themselves (and certainly does that in 1.4b). You should not be able to read the server-side map onscreen. Turns out that this is because Apache has deprecated default use of mod_imap http://httpd.apache.org/docs/mod/mod_imap.html Adding: AddHandler imap-file map to the .htaccess of a parent directory fixed that. Turns out that was confusing me on how client-side/server-side worked; I just added default http://www.mit.edu/ to the server-side map in the example. With AddHandler working right, clicking on a background area unspecified in the client map takes us to the server map, and to the MIT homepage. That's not specified in the client map, so client/server fallthrough is actually working how I imagined it should anyway. Marking this bug as invalid.
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → INVALID
Reporter | ||
Comment 16•13 years ago
|
||
Ran into this one again looking at http://www.btimes.co.za/97/0406/tech/tech6.htm and clicking on the imagemapped buttonbar - Apache server, map is served out rather than parsed, again because Apache has deprecated default use of mod_imap http://httpd.apache.org/docs/mod/mod_imap.html This is likely an evangelism/education issue?
You need to log in
before you can comment on or make changes to this bug.
Description
•