<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>74801</bug_id>
          
          <creation_ts>2011-12-17 21:22:33 -0800</creation_ts>
          <short_desc>Creating &lt;animate&gt; elements on DOM event after window load do not execute</short_desc>
          <delta_ts>2022-06-29 23:14:44 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>SVG</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>CONFIGURATION CHANGED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Chirag Moradiya">chirag</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ahmad.saleem792</cc>
    
    <cc>ap</cc>
    
    <cc>dino</cc>
    
    <cc>graouts</cc>
    
    <cc>nathan</cc>
    
    <cc>rniwa</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>523400</commentid>
    <comment_count>0</comment_count>
    <who name="Chirag Moradiya">chirag</who>
    <bug_when>2011-12-17 21:22:33 -0800</bug_when>
    <thetext>Hi this is the variation of bug 34301.

I want to create an SVG element on a DOM event e.g. click on a button. This SVG is having &lt;animate&gt; tag inside so the animation can start immediately or beginElement() call, depends on configuration. I am not able to complete this task due to this bug.

Conside following HTML Page:
&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;The Rainbow Tree&lt;/title&gt;
&lt;script type=&quot;text/javascript&quot;&gt;

	function createSVG(){ 		

			chetan1 = document.getElementById(&apos;chetan11&apos;);
			svgns = &quot;http://www.w3.org/2000/svg&quot;;
			xlinkns = &quot;http://www.w3.org/1999/xlink&quot;;			
 			elSvg = document.createElementNS(svgns, &apos;svg&apos;);
	
			
			// create all svg DOM elements.
			elSvg.setAttribute(&apos;width&apos;, &apos;120px&apos;);
			elSvg.setAttribute(&apos;height&apos;, &apos;76px&apos;);
			elSvg.setAttribute(&apos;xmlns&apos;, svgns);
			elSvg.setAttribute(&apos;xmlns:xlink&apos;, xlinkns);			
			chetan1.appendChild(elSvg);
			
			// Image DOM
			var elImage = document.createElementNS(svgns, &apos;image&apos;);
			elImage.setAttributeNS(xlinkns, &apos;xlink:href&apos;, &apos;ladybird_small.png&apos;);
			// 	var $Image = $(elImage);
			elImage.setAttribute(&apos;width&apos;, &apos;60px&apos;);
			elImage.setAttribute(&apos;height&apos;, &apos;38px&apos;);			
 			elSvg.appendChild(elImage);
			
			elAniamte = document.createElementNS(svgns, &apos;animate&apos;); 			
			
			elAniamte.setAttribute(&apos;attributeName&apos;, &apos;x&apos;);
			elAniamte.setAttribute(&apos;attributeType&apos;, &apos;XML&apos;);
			elAniamte.setAttribute(&apos;from&apos;, &apos;10&apos;);
			elAniamte.setAttribute(&apos;to&apos;, &apos;30&apos;);
			elAniamte.setAttribute(&apos;dur&apos;, &apos;2s&apos;);
			elAniamte.setAttribute(&apos;repeatCount&apos;, &apos;indefinite&apos;);
			elAniamte.setAttribute(&apos;fill&apos;, &apos;freeze&apos;);
			elImage.appendChild(elAniamte);									
	};
	window.onload = function(){		
            //Here one line will be added based on following cases
	}

	&lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div id=&quot;chetan11&quot;&gt;&lt;/div&gt;
	&lt;button id=&quot;start&quot;&gt;start&lt;/button&gt;
&lt;/body&gt;
&lt;/html&gt;


Case 1:
&gt; createSVG();

Case 2:
&gt; document.getElementById(&quot;start&quot;).addEventListener(&apos;click&apos;, createSVG);		

In Case1, I am directly creating SVG on load event of winodw.
Here, animation starts on window load.

In Case2, I am creating SVG on click of the button.
Here, image is shown when svg is added to the page, but animation doesn&apos;t start.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>607306</commentid>
    <comment_count>1</comment_count>
      <attachid>138261</attachid>
    <who name="Nathan Wright">nathan</who>
    <bug_when>2012-04-21 18:17:18 -0700</bug_when>
    <thetext>Created attachment 138261
Additional test case

I&apos;ve narrowed down this issue a bit more. It&apos;s possible to create an animation using javascript if and only if the SVG element was first rendered during page load. For example, if the SVG was created using an inline script inside the document tag, you can later inject animation elements and they will indeed work. If the SVG creation happens any time after the document has finished loading, the injected animate elements will not respond to beginElement().

This test case fails in Webkit 535.19 (Chrome 18.0.1025.163) and Webkit 534.51.22 (Safari 5.1.1). Firefox 11 behaves correctly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1873123</commentid>
    <comment_count>2</comment_count>
    <who name="Ahmad Saleem">ahmad.saleem792</who>
    <bug_when>2022-05-31 14:01:39 -0700</bug_when>
    <thetext>The attached test case behaves similar in Safari 15.5 on macOS 12.4 to other browser - Chrome Canary 104 and Firefox Nightly 103. Can this be closed with &quot;RESOLVED CONFIGURATION CHANGED&quot; status.

In case, if I have tested this wrong or this bug is about something else. Please keep it open and update accordingly. Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1879271</commentid>
    <comment_count>3</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2022-06-29 23:14:44 -0700</bug_when>
    <thetext>Test works fine in Safari now.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>138261</attachid>
            <date>2012-04-21 18:17:18 -0700</date>
            <delta_ts>2012-04-21 18:17:18 -0700</delta_ts>
            <desc>Additional test case</desc>
            <filename>test.html</filename>
            <type>text/html</type>
            <size>1302</size>
            <attacher name="Nathan Wright">nathan</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFs
Ly9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25h
bC5kdGQiPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CjxoZWFk
PgoJPHNjcmlwdD4KCQl2YXIgU1ZHX0hUTUwgPSAnPHN2ZyB3aWR0aD0iODk4IiBoZWlnaHQ9IjIz
NyI+PGRlZnM+PC9kZWZzPjxnPjxyZWN0IHg9IjUwIiB5PSI1MCIgd2lkdGg9IjIwMCIgaGVpZ2h0
PSIyMDAiIHN0cm9rZS13aWR0aD0iMTAwIiBzdHJva2U9InJlZCI+PC9yZWN0PjwvZz48L3N2Zz4n
OwoJCWZ1bmN0aW9uIGNyZWF0ZVNWRygpIHsKCQkJdmFyIGVsID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgnZGl2Jyk7CgkJCWRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZWwpOwoJCQllbC5pbm5l
ckhUTUwgPSBTVkdfSFRNTDsKCQkJZWwub25jbGljayA9IGFuaW1hdGU7CgkJfTsKCQlmdW5jdGlv
biBhbmltYXRlKGV2ZW50KSB7CgkJCXZhciB0YXJnZXQgPSBldmVudC50YXJnZXQ7CgkJCXZhciBh
bmltYXRpb24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoJ2h0dHA6Ly93d3cudzMub3JnLzIw
MDAvc3ZnJywgJ2FuaW1hdGUnKTsKCQkJYW5pbWF0aW9uLnNldEF0dHJpYnV0ZU5TKG51bGwsICdh
dHRyaWJ1dGVOYW1lJywgJ3N0cm9rZS13aWR0aCcpOwoJCQlhbmltYXRpb24uc2V0QXR0cmlidXRl
TlMobnVsbCwgJ2F0dHJpYnV0ZVR5cGUnLCAnWE1MJyk7CgkJCWFuaW1hdGlvbi5zZXRBdHRyaWJ1
dGVOUyhudWxsLCAnYmVnaW4nLCAnaW5kZWZpbml0ZScpOwoJCQlhbmltYXRpb24uc2V0QXR0cmli
dXRlTlMobnVsbCwgJ3RvJywgMSk7CgkJCWFuaW1hdGlvbi5zZXRBdHRyaWJ1dGVOUyhudWxsLCAn
ZHVyJywgMC41KTsKCQkJYW5pbWF0aW9uLnNldEF0dHJpYnV0ZU5TKG51bGwsICdmaWxsJywgJ2Zy
ZWV6ZScpOwoJCQl0YXJnZXQuYXBwZW5kQ2hpbGQoYW5pbWF0aW9uKTsKCQkJYW5pbWF0aW9uLmJl
Z2luRWxlbWVudCgpOwoJCX07Cgk8L3NjcmlwdD4KPC9oZWFkPgo8Ym9keT4KCVRoaXMgYW5pbWF0
ZXMganVzdCBmaW5lIChjbGljayB0aGUgZWxlbWVudCk6Cgk8c2NyaXB0PgoJCWNyZWF0ZVNWRygp
OwoJPC9zY3JpcHQ+CgoJVGhpcyBTVkcgaXMgZHJhd24gMjAwbXMgYWZ0ZXIgcGFnZSBsb2FkIGFu
ZCB3aWxsIG5vdCBhbmltYXRlIHdoZW4geW91IGNsaWNrIGl0OgoJPHNjcmlwdD4KCQlzZXRUaW1l
b3V0KGNyZWF0ZVNWRywgMjAwKTsKCTwvc2NyaXB0Pgo8L2JvZHk+CjwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>