Hi Nico,

What a fun problem!

I fiddled around with it just enough to confirm what seems like odd behavior in 
the browsers:

The enclosed code (with a simple .js file of some sort added on ) shows very 
different behavior in Opera 9.5alpha, FF1.5 and IE
with FF able to run the code from the <script> built through DOM. FF behaves 
the way I would expect it to.

I am not sure where within DOM one would expect the text of a .js (or .es) file 
to actually appear, which is why I was experimenting with various DOM 
explorations here. If the commented out code (both SVG and JavaScript) is 
commented back in then all three browsers see three script tags, but only in 
the first case, when the code is provided in-line, can I figure out how to 
interrogate the source code programmatically. Only in FF is the script, thusly 
constructed, executable.

Since FF works the way I expect it should, it is probably the one which is 
buggy. Erik Dahlstrom has pointed out that some of the CDATA hoopla that I 
typically use is more extravagant than it needs to be, so in this context my 
extraneous hoopla could prove problematic since it does pop up as the nodeValue 
of the script that is commented out. Erik and maybe Martin H. have also 
mentioned the use of href.baseVal in setting xlinks, but this is on my list of 
things to ask about sometime, so am not sure why or when one would do that.

cheers,
David
-------------------------
<svg xmlns="http://www.w3.org/2000/svg"; width="100%"
xmlns:xlink="http://www.w3.org/1999/xlink"; onload="start()"
viewBox="0 0 100 100">
<script><![CDATA[
svgRoot=document.documentElement
svgNS="http://www.w3.org/2000/svg";
xlinkNS="http://www.w3.org/1999/xlink"; 
svgRoot.setAttribute("onclick","runit()")
function start(){
 var s = document.createElementNS(svgNS,"script");
 svgRoot.appendChild(s);
 s.setAttributeNS(xlinkNS,"xlink:href","xxxx.js");
 SCR=document.getElementsByTagName("script")
 
alert(SCR.length+SCR.item(0).nodeName+SCR.item(0).nodeName+SCR.item(0).firstChild.nodeValue)
 alert(SCR.length+SCR.item(1).nodeName)
 alert(SCR.item(1).getAttribute("xlink:href"))
 //alert(SCR.item(2).nodeName)
 //alert(SCR.item(2).getAttribute("xlink:href"))
 runit()
}
//]]></script>
<!--<script xlink:href="xxxx.js"></script>-->

<rect x="0" y="0" id="R" height="100" width="100" fill="red" />

</svg>


  ----- Original Message ----- 
  From: Domenico Strazzullo 
  To: [email protected] 
  Sent: Tuesday, November 27, 2007 5:18 PM
  Subject: [svg-developers] Re: Create script element


  it got truncated, here it is.

  Can anyone confirm that the following works (or doesn't work)?:

  var s = svgdoc.createElementNS(svgNS,"script");
  s.setAttributeNS(xlinkNS,"xlink:href","xxxx.es");
  svgRoot.appendChild(s);

  After loading and parsing an external file the script linked to that 
  file is dumb. Same if the script is inline. Then I tried the above with 
  no luck. Can anyone suggest an alternate method, other than hardcoding 
  the script tag in the first file(the script filename is not necessarily 
  known in advance)?

  Thank you,

  Domenico

  --- In [email protected], "Domenico Strazzullo" <[EMAIL 
PROTECTED]> 
  wrote:
  >
  > Hi,
  > 
  > Can anyone confirm that the following works (or doesn
  >



   

[Non-text portions of this message have been removed]



-----
To unsubscribe send a message to: [EMAIL PROTECTED]
-or-
visit http://groups.yahoo.com/group/svg-developers and click "edit my 
membership"
---- 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/svg-developers/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/svg-developers/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:[EMAIL PROTECTED] 
    mailto:[EMAIL PROTECTED]

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 

Reply via email to