use a symbol (instance) via xlink:href creates clickable link in FF3

Jens Ansorg <[email protected]>
Newsgroups gmane.comp.mozilla.devel.svg
Message-ID <[email protected]>
hi,

after switching from FF2 to FF3 some SVG shows new behavior and I wonder 
whether I can do anything to change it bak to what it did in FF2.

I have SVG that contains symbols like

<symbol id="iconPrinter" viewBox="434.733 251.718 30.5341 19.6014">
  <rect class="fil0 str0" x="442" y="252" width="15" height="11"/>
  <rect class="fil1 str0" x="435" y="258" width="28" height="11"/>
</symbol>

later, instances of those symbols are used throughout the svg drawing like

<use id="iPrinter" transform="scale(0.791195 0.791195)" x="15.6261" 
y="197.181" width="30.5341" height="19.6014" xlink:href="#iconPrinter"/>

Now, viewing the SVG in FF2 (and adobe SVG plugin) just shows the 
printer icon in it's place.

When viewed in FF3, the printer icon is show and it becomes a kind of 
link: when I click on the icon I get redirected to map.svg#iconPrinter

How can I disable this link behavior on use elements? I experimented 
with additional xlink attributes like xlink:type, xlink:show but it 
makes no difference.

Why does this cause trouble at all? The SVG in question is a map of our 
building with several layers for the floors. The SVG is embedded in a 
HTML page "map.html". The SVG gets javascript code attached that i.e. 
responds to clicking on the printer icons. With FF2 only the javascript 
action got executed. But now in FF3 the action happens and then the link 
gets executed: in the browser the address "map.html" gets replaced with 
"map.svg#iconPrinter" - the svg gets loaded directly without the 
surrounding html and does not work anymore.

Any ideas?
thank you
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.