Re: Usage questions on Adobe's SVG viewer

Curt,

I've replied with some comments below.

At 04:16 PM 4/3/00 , Curt Arnold wrote:
>I've have two usage questions that may or not be Adobe viewer specific.
>
>1. I'm a little at a loss on how to calculate a path in a Javascript 
>fragment, I wanted to
>do something like:
>
><script>
>function Curve1_onload()
>{
>         //   of course I want to do something much more complicated
>         curve.setAttribute("d","M 0 0 L 0.01 390");
>}
></script>
><g style="stroke-width:5px; fill:none; stroke:blue;">
><path id="curve" d="M 0 0 L 0 0" onload="Curve1_onload()"/>
></g>
>
>There are of course numerous things that I could be doing wrong.


The DOM does not support accessing elements by name like that. In theory, 
one way to do what you want would be to pass in the event object and then 
call getTarget on that object to determine the target of the event (in this 
case, the node with id "curve"). For example:

<svg>
<script>
function Curve1_onload(event)
{
         //   of course I want to do something much more complicated
         evt.getTarget().setAttribute("d","M 0 0 L 0.01 390");
}
</script>
<g style="stroke-width:5px; fill:none; stroke:blue;">
<path id="curve" d="M 0 0 L 0 0" onload="Curve1_onload(event)"/>
</g>
</svg>

However, in practice there is no way to support onload event handlers on 
scripts from within a Netscape plug-in. Therefore the Adobe SVG Viewer does 
not support the "onload" event handler on anything other than the "svg" 
element, and only under Internet Explorer. Can you trigger your script 
through some other means, perhaps with a mouse click?


>2. I've tried to change the src attribute on an <embed> element in 
>Internet Explorer 5, but the SVG control doesn't refresh.
>Stepping through the script debugger shows the src attribute has changed, 
>but the display isn't refreshed.


Preview Release 4 of the Adobe SVG Viewer did not support setting the src 
attribute on the embed element in IE5, but the next version of the Adobe 
SVG Viewer will support that.

Pat



>                         Plot type: <select name="fatigueType" 
> id="fatigueType" onchange="fatigueType_onChange()"><option value="1" 
> selected>Cyclic Stress-Strain</option><option
>value="2">Strain-life</option></select>
><p>
><input name="checkbox1" type="checkbox" value="ON"><a 
>href="details.html">&sigma;<sub>f</sub>'=676</a>
></p>
><script type="text/javascript" language="javascript">
>                                         function fatigueType_onChange()
>                                         {
>
> 
>document.all("FatiguePlot").src = 
>"ntetra.svg";
>                                         }
>                            </script>
></form>
></td><td><embed src="cyclic.svg" ID="FatiguePlot" width="100%" 
>height="400" type="image/svg"></embed></td>
>
>I'd appreciate any suggestions.  Thanks.

____________________________________________________________
Paton J. Lewis
Adobe Systems
408.536.4754

Received on Tuesday, 4 April 2000 14:32:13 UTC