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

<bugzilla version="5.0.4"
          urlbase="https://www.w3.org/Bugs/Public/"
          
          maintainer="sysbot+bugzilla@w3.org"
>

    <bug>
          <bug_id>19962</bug_id>
          
          <creation_ts>2012-11-14 14:14:05 +0000</creation_ts>
          <short_desc>Add insertAdjacentText and insertAdjacentElement?</short_desc>
          <delta_ts>2016-03-16 06:20:12 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebAppsWG</product>
          <component>DOM</component>
          <version>unspecified</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows 3.1</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard>blocked on implementers weighing in</status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anne">annevk</reporter>
          <assigned_to name="Anne">annevk</assigned_to>
          <cc>bugs</cc>
    
    <cc>mike</cc>
    
    <cc>ojan</cc>
    
    <cc>philipj</cc>
    
    <cc>www-dom</cc>
    
    <cc>zcorpan</cc>
          
          <qa_contact>public-webapps-bugzilla</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>78308</commentid>
    <comment_count>0</comment_count>
    <who name="Anne">annevk</who>
    <bug_when>2012-11-14 14:14:05 +0000</bug_when>
    <thetext>https://bugzilla.mozilla.org/show_bug.cgi?id=811259 suggests they might be quite widely supported. Have not verified.

Compared to before()/after()/prepend()/append() they kinda suck.

http://msdn.microsoft.com/en-us/library/ms536451(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/ms536453%28v=vs.85%29.aspx

http://domparsing.spec.whatwg.org/#dom-element-insertadjacenthtml</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>78309</commentid>
    <comment_count>1</comment_count>
    <who name="Anne">annevk</who>
    <bug_when>2012-11-14 14:26:51 +0000</bug_when>
    <thetext>Support: Opera/Chrome/Safari and presumably Internet Explorer.

Opera/Chrome/Safari expose them on Element, not Document or Text, and probably none of the other node types either (did not test).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>78310</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Pieters">zcorpan</who>
    <bug_when>2012-11-14 15:11:43 +0000</bug_when>
    <thetext>$ grep -aPc &quot;\.insertAdjacentElement\s*\(&quot; web200904 
85
$ grep -aPc &quot;\.insertAdjacentText\s*\(&quot; web200904 
4
$ grep -aPc &quot;\.insertAdjacent(Text|Element)\s*\(&quot; stevef-all
0</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>78311</commentid>
    <comment_count>3</comment_count>
    <who name="Simon Pieters">zcorpan</who>
    <bug_when>2012-11-14 15:20:08 +0000</bug_when>
    <thetext>Those data sets are http://dotnetdotcom.org/ and http://www.paciellogroup.com/blog/2012/04/html5-accessibility-chops-data-for-the-masses/ respectively.

For comparison purposes:
$ grep -aPc &quot;\.insertAdjacentHTML\s*\(&quot; web200904 
602
$ grep -aPc &quot;\.insertAdjacentHTML\s*\(&quot; stevef-all
5</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>78312</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Pieters">zcorpan</who>
    <bug_when>2012-11-14 15:31:25 +0000</bug_when>
    <thetext>Those data sets do not have external scripts. Checking with google code search:

External scripts:

http://code.google.com/codesearch#search/&amp;q=%5C.insertAdjacentElement%5Cs*%5C(%20lang:js&amp;type=cs 1,292
http://code.google.com/codesearch#search/&amp;q=%5C.insertAdjacentText%5Cs*%5C(%20lang:js&amp;type=cs 24
http://code.google.com/codesearch#search/&amp;q=%5C.insertAdjacentHTML%5Cs*%5C(%20lang:js&amp;type=cs 1,667

Internal scripts:

http://code.google.com/codesearch#search/&amp;q=%5C.insertAdjacentElement%5Cs*%5C(%20lang:html&amp;type=cs 109
http://code.google.com/codesearch#search/&amp;q=%5C.insertAdjacentText%5Cs*%5C(%20lang:html&amp;type=cs 6
http://code.google.com/codesearch#search/&amp;q=%5C.insertAdjacentHTML%5Cs*%5C(%20lang:html&amp;type=cs 259</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>93106</commentid>
    <comment_count>5</comment_count>
    <who name="Anne">annevk</who>
    <bug_when>2013-09-06 15:08:27 +0000</bug_when>
    <thetext>This now depends on http://code.google.com/p/chromium/issues/detail?id=286321</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>99666</commentid>
    <comment_count>6</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2014-02-04 18:16:52 +0000</bug_when>
    <thetext>Chrome&apos;s measurements:
insertAdjacentElement: 0.036% of pageviews
insertAdjacentText: 0.00034% of pageviews

insertAdjacentElement is likely too high of usage for us to be able to safely remove it. Given that we&apos;re stuck with insertAdjacentHTML and insertAdjacentElement, I don&apos;t see the benefit of removing just insertAdjacentText.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>100508</commentid>
    <comment_count>7</comment_count>
    <who name="Anne">annevk</who>
    <bug_when>2014-02-13 11:52:16 +0000</bug_when>
    <thetext>Given https://bugzilla.mozilla.org/show_bug.cgi?id=199191#c15 maybe it&apos;s reasonable to add this cruft after all. It&apos;s kind of sad given before() / after().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>116596</commentid>
    <comment_count>8</comment_count>
    <who name="Philip Jägenstedt">philipj</who>
    <bug_when>2014-12-19 23:43:35 +0000</bug_when>
    <thetext>Is DOM still the right spec for this, given https://dvcs.w3.org/hg/innerhtml/raw-file/tip/index.html#insertadjacenthtml() ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>116606</commentid>
    <comment_count>9</comment_count>
    <who name="Anne">annevk</who>
    <bug_when>2014-12-20 10:02:49 +0000</bug_when>
    <thetext>Yeah, these methods don&apos;t involve any parsing. Same situation as with isSameNode() though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>116619</commentid>
    <comment_count>10</comment_count>
    <who name="Philip Jägenstedt">philipj</who>
    <bug_when>2014-12-21 01:02:10 +0000</bug_when>
    <thetext>Could the common bits between insertAdjacentHTML(), insertAdjacentElement() and insertAdjacentText() be pulled into DOM then? In Blink there&apos;s a common insertAdjacent() internally which take a Node, and the Web-exposed functions do very little on top of that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>116626</commentid>
    <comment_count>11</comment_count>
    <who name="Anne">annevk</who>
    <bug_when>2014-12-21 18:44:49 +0000</bug_when>
    <thetext>That only makes sense if we decide to standardize these two methods.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>117350</commentid>
    <comment_count>12</comment_count>
    <who name="Philip Jägenstedt">philipj</who>
    <bug_when>2015-01-20 13:05:24 +0000</bug_when>
    <thetext>I say let&apos;s standardize insertAdjacentText and insertAdjacentElement. They don&apos;t add any real complexity on top of insertAdjacentHTML and at least insertAdjacentElement is used enough that removal wouldn&apos;t be painless.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125469</commentid>
    <comment_count>13</comment_count>
    <who name="Olli Pettay">bugs</who>
    <bug_when>2016-03-14 13:39:31 +0000</bug_when>
    <thetext>I think we could add those to the spec.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125473</commentid>
    <comment_count>14</comment_count>
    <who name="Anne">annevk</who>
    <bug_when>2016-03-14 14:48:45 +0000</bug_when>
    <thetext>https://github.com/whatwg/dom/commit/8fa7ac749d1b612504184aad2c20808a1785b370

Thanks all.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125516</commentid>
    <comment_count>15</comment_count>
    <who name="Philip Jägenstedt">philipj</who>
    <bug_when>2016-03-16 06:20:12 +0000</bug_when>
    <thetext>Tests requested in https://github.com/w3c/web-platform-tests/issues/2672</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>