1 <html><head><title>Roo/Shadow.js</title><link rel="stylesheet" type="text/css" href="../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty"><span class="jsdoc-comment">/*
4 * Copyright(c) 2006-2007, Ext JS, LLC.
6 * Originally Released Under LGPL - original licence link has changed is not relivant.
9 * <script type="text/javascript">
15 * Simple class that can provide a shadow effect for any element. Note that the element MUST be absolutely positioned,
16 * and the shadow does not provide any shimming. This should be used only in simple cases -- for more advanced
17 * functionality that can also provide the same shadow effect, see the {@link Roo.Layer} class.
20 * @param {Object} config The config object
22 </span><span class="jsdoc-var">Roo.Shadow </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">){
23 </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
24 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">this.mode </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-string">"string"</span><span class="jsdoc-syntax">){
25 </span><span class="jsdoc-var">this.mode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.defaultMode</span><span class="jsdoc-syntax">;
27 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">o </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.offset</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">a </span><span class="jsdoc-syntax">= {</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">: 0};
28 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">rad </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Math.floor</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.offset</span><span class="jsdoc-syntax">/2);
29 </span><span class="jsdoc-keyword">switch</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.mode.toLowerCase</span><span class="jsdoc-syntax">()){ </span><span class="jsdoc-comment">// all this hideous nonsense calculates the various offsets for shadows
30 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">"drop"</span><span class="jsdoc-syntax">:
31 </span><span class="jsdoc-var">a.w </span><span class="jsdoc-syntax">= 0;
32 </span><span class="jsdoc-var">a.l </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">a.t </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">;
33 </span><span class="jsdoc-var">a.t </span><span class="jsdoc-syntax">-= 1;
34 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isIE</span><span class="jsdoc-syntax">){
35 </span><span class="jsdoc-var">a.l </span><span class="jsdoc-syntax">-= </span><span class="jsdoc-var">this.offset </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">rad</span><span class="jsdoc-syntax">;
36 </span><span class="jsdoc-var">a.t </span><span class="jsdoc-syntax">-= </span><span class="jsdoc-var">this.offset </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">rad</span><span class="jsdoc-syntax">;
37 </span><span class="jsdoc-var">a.w </span><span class="jsdoc-syntax">-= </span><span class="jsdoc-var">rad</span><span class="jsdoc-syntax">;
38 </span><span class="jsdoc-var">a.h </span><span class="jsdoc-syntax">-= </span><span class="jsdoc-var">rad</span><span class="jsdoc-syntax">;
39 </span><span class="jsdoc-var">a.t </span><span class="jsdoc-syntax">+= 1;
41 </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
42 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">"sides"</span><span class="jsdoc-syntax">:
43 </span><span class="jsdoc-var">a.w </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">*2);
44 </span><span class="jsdoc-var">a.l </span><span class="jsdoc-syntax">= -</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">;
45 </span><span class="jsdoc-var">a.t </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">-1;
46 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isIE</span><span class="jsdoc-syntax">){
47 </span><span class="jsdoc-var">a.l </span><span class="jsdoc-syntax">-= (</span><span class="jsdoc-var">this.offset </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">rad</span><span class="jsdoc-syntax">);
48 </span><span class="jsdoc-var">a.t </span><span class="jsdoc-syntax">-= </span><span class="jsdoc-var">this.offset </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">rad</span><span class="jsdoc-syntax">;
49 </span><span class="jsdoc-var">a.l </span><span class="jsdoc-syntax">+= 1;
50 </span><span class="jsdoc-var">a.w </span><span class="jsdoc-syntax">-= (</span><span class="jsdoc-var">this.offset </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">rad</span><span class="jsdoc-syntax">)*2;
51 </span><span class="jsdoc-var">a.w </span><span class="jsdoc-syntax">-= </span><span class="jsdoc-var">rad </span><span class="jsdoc-syntax">+ 1;
52 </span><span class="jsdoc-var">a.h </span><span class="jsdoc-syntax">-= 1;
54 </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
55 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">"frame"</span><span class="jsdoc-syntax">:
56 </span><span class="jsdoc-var">a.w </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">a.h </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">*2);
57 </span><span class="jsdoc-var">a.l </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">a.t </span><span class="jsdoc-syntax">= -</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">;
58 </span><span class="jsdoc-var">a.t </span><span class="jsdoc-syntax">+= 1;
59 </span><span class="jsdoc-var">a.h </span><span class="jsdoc-syntax">-= 2;
60 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isIE</span><span class="jsdoc-syntax">){
61 </span><span class="jsdoc-var">a.l </span><span class="jsdoc-syntax">-= (</span><span class="jsdoc-var">this.offset </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">rad</span><span class="jsdoc-syntax">);
62 </span><span class="jsdoc-var">a.t </span><span class="jsdoc-syntax">-= (</span><span class="jsdoc-var">this.offset </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">rad</span><span class="jsdoc-syntax">);
63 </span><span class="jsdoc-var">a.l </span><span class="jsdoc-syntax">+= 1;
64 </span><span class="jsdoc-var">a.w </span><span class="jsdoc-syntax">-= (</span><span class="jsdoc-var">this.offset </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">rad </span><span class="jsdoc-syntax">+ 1);
65 </span><span class="jsdoc-var">a.h </span><span class="jsdoc-syntax">-= (</span><span class="jsdoc-var">this.offset </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">rad</span><span class="jsdoc-syntax">);
66 </span><span class="jsdoc-var">a.h </span><span class="jsdoc-syntax">+= 1;
68 </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
71 </span><span class="jsdoc-var">this.adjusts </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">a</span><span class="jsdoc-syntax">;
74 </span><span class="jsdoc-var">Roo.Shadow.prototype </span><span class="jsdoc-syntax">= {
75 </span><span class="jsdoc-comment">/**
77 * The shadow display mode. Supports the following options:<br />
78 * sides: Shadow displays on both sides and bottom only<br />
79 * frame: Shadow displays equally on all four sides<br />
80 * drop: Traditional bottom-right drop shadow (default)
82 </span><span class="jsdoc-var">mode</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
83 </span><span class="jsdoc-comment">/**
84 * @cfg {String} offset
85 * The number of pixels to offset the shadow from the element (defaults to 4)
87 </span><span class="jsdoc-var">offset</span><span class="jsdoc-syntax">: 4,
89 </span><span class="jsdoc-comment">// private
90 </span><span class="jsdoc-var">defaultMode</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"drop"</span><span class="jsdoc-syntax">,
92 </span><span class="jsdoc-comment">/**
93 * Displays the shadow under the target element
94 * @param {String/HTMLElement/Element} targetEl The id or element under which the shadow should display
96 </span><span class="jsdoc-var">show </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">target</span><span class="jsdoc-syntax">){
97 </span><span class="jsdoc-var">target </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">target</span><span class="jsdoc-syntax">);
98 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">){
99 </span><span class="jsdoc-var">this.el </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.Shadow.Pool.pull</span><span class="jsdoc-syntax">();
100 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el.dom.nextSibling </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">target.dom</span><span class="jsdoc-syntax">){
101 </span><span class="jsdoc-var">this.el.insertBefore</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">target</span><span class="jsdoc-syntax">);
104 </span><span class="jsdoc-var">this.el.setStyle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"z-index"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.zIndex </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">parseInt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">target.getStyle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"z-index"</span><span class="jsdoc-syntax">), 10)-1);
105 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isIE</span><span class="jsdoc-syntax">){
106 </span><span class="jsdoc-var">this.el.dom.style.filter</span><span class="jsdoc-syntax">=</span><span class="jsdoc-string">"progid:DXImageTransform.Microsoft.alpha(opacity=50) progid:DXImageTransform.Microsoft.Blur(pixelradius="</span><span class="jsdoc-syntax">+(</span><span class="jsdoc-var">this.offset</span><span class="jsdoc-syntax">)+</span><span class="jsdoc-string">")"</span><span class="jsdoc-syntax">;
108 </span><span class="jsdoc-var">this.realign</span><span class="jsdoc-syntax">(
109 </span><span class="jsdoc-var">target.getLeft</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">),
110 </span><span class="jsdoc-var">target.getTop</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">),
111 </span><span class="jsdoc-var">target.getWidth</span><span class="jsdoc-syntax">(),
112 </span><span class="jsdoc-var">target.getHeight</span><span class="jsdoc-syntax">()
114 </span><span class="jsdoc-var">this.el.dom.style.display </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"block"</span><span class="jsdoc-syntax">;
117 </span><span class="jsdoc-comment">/**
118 * Returns true if the shadow is visible, else false
120 </span><span class="jsdoc-var">isVisible </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
121 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.el </span><span class="jsdoc-syntax">? </span><span class="jsdoc-keyword">true </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
124 </span><span class="jsdoc-comment">/**
125 * Direct alignment when values are already available. Show must be called at least once before
126 * calling this method to ensure it is initialized.
127 * @param {Number} left The target element left position
128 * @param {Number} top The target element top position
129 * @param {Number} width The target element width
130 * @param {Number} height The target element height
132 </span><span class="jsdoc-var">realign </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">l</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">w</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">){
133 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">){
134 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
136 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">a </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.adjusts</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">d </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.dom</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">s </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">d.style</span><span class="jsdoc-syntax">;
137 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">iea </span><span class="jsdoc-syntax">= 0;
138 </span><span class="jsdoc-var">s.left </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">l</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">a.l</span><span class="jsdoc-syntax">)+</span><span class="jsdoc-string">"px"</span><span class="jsdoc-syntax">;
139 </span><span class="jsdoc-var">s.top </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">a.t</span><span class="jsdoc-syntax">)+</span><span class="jsdoc-string">"px"</span><span class="jsdoc-syntax">;
140 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">sw </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">w</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">a.w</span><span class="jsdoc-syntax">), </span><span class="jsdoc-var">sh </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">a.h</span><span class="jsdoc-syntax">), </span><span class="jsdoc-var">sws </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">sw </span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">"px"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">shs </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">sh </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">"px"</span><span class="jsdoc-syntax">;
142 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">s.width </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">sws </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">s.height </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">shs</span><span class="jsdoc-syntax">){
143 </span><span class="jsdoc-var">s.width </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">sws</span><span class="jsdoc-syntax">;
144 </span><span class="jsdoc-var">s.height </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">shs</span><span class="jsdoc-syntax">;
145 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">Roo.isIE</span><span class="jsdoc-syntax">){
146 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cn </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">d.childNodes</span><span class="jsdoc-syntax">;
147 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">sww </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(0, (</span><span class="jsdoc-var">sw</span><span class="jsdoc-syntax">-12))+</span><span class="jsdoc-string">"px"</span><span class="jsdoc-syntax">;
148 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">[0]</span><span class="jsdoc-var">.childNodes</span><span class="jsdoc-syntax">[1]</span><span class="jsdoc-var">.style.width </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">sww</span><span class="jsdoc-syntax">;
149 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">[1]</span><span class="jsdoc-var">.childNodes</span><span class="jsdoc-syntax">[1]</span><span class="jsdoc-var">.style.width </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">sww</span><span class="jsdoc-syntax">;
150 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">[2]</span><span class="jsdoc-var">.childNodes</span><span class="jsdoc-syntax">[1]</span><span class="jsdoc-var">.style.width </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">sww</span><span class="jsdoc-syntax">;
151 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">[1]</span><span class="jsdoc-var">.style.height </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(0, (</span><span class="jsdoc-var">sh</span><span class="jsdoc-syntax">-12))+</span><span class="jsdoc-string">"px"</span><span class="jsdoc-syntax">;
156 </span><span class="jsdoc-comment">/**
159 </span><span class="jsdoc-var">hide </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
160 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">){
161 </span><span class="jsdoc-var">this.el.dom.style.display </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"none"</span><span class="jsdoc-syntax">;
162 </span><span class="jsdoc-var">Roo.Shadow.Pool.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">);
163 </span><span class="jsdoc-keyword">delete </span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">;
167 </span><span class="jsdoc-comment">/**
168 * Adjust the z-index of this shadow
169 * @param {Number} zindex The new z-index
171 </span><span class="jsdoc-var">setZIndex </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">z</span><span class="jsdoc-syntax">){
172 </span><span class="jsdoc-var">this.zIndex </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">z</span><span class="jsdoc-syntax">;
173 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">){
174 </span><span class="jsdoc-var">this.el.setStyle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"z-index"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">z</span><span class="jsdoc-syntax">);
179 </span><span class="jsdoc-comment">// Private utility class that manages the internal Shadow cache
180 </span><span class="jsdoc-var">Roo.Shadow.Pool </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
181 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">p </span><span class="jsdoc-syntax">= [];
182 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">markup </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.isIE </span><span class="jsdoc-syntax">?
183 </span><span class="jsdoc-string">'<div class="x-ie-shadow"></div>' </span><span class="jsdoc-syntax">:
184 </span><span class="jsdoc-string">'<div class="x-shadow"><div class="xst"><div class="xstl"></div><div class="xstc"></div><div class="xstr"></div></div><div class="xsc"><div class="xsml"></div><div class="xsmc"></div><div class="xsmr"></div></div><div class="xsb"><div class="xsbl"></div><div class="xsbc"></div><div class="xsbr"></div></div></div>'</span><span class="jsdoc-syntax">;
185 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-syntax">{
186 </span><span class="jsdoc-var">pull </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
187 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">sh </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">p.shift</span><span class="jsdoc-syntax">();
188 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">sh</span><span class="jsdoc-syntax">){
189 </span><span class="jsdoc-var">sh </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.DomHelper.insertHtml</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"beforeBegin"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">document.body.firstChild</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">markup</span><span class="jsdoc-syntax">));
190 </span><span class="jsdoc-var">sh.autoBoxAdjust </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
192 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">sh</span><span class="jsdoc-syntax">;
195 </span><span class="jsdoc-var">push </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">sh</span><span class="jsdoc-syntax">){
196 </span><span class="jsdoc-var">p.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">sh</span><span class="jsdoc-syntax">);
199 }();</span></code></body></html>