mozilla

Compare Revisions

Rich-Text Editing in Mozilla

Change Revisions

Revision 340813:

Revision 340813 by Yuan.Xulei on

Revision 462743:

Revision 462743 by arikupeng on

Title:
Rich-Text Editing in Mozilla
Rich-Text Editing in Mozilla
Slug:
Rich-Text_Editing_in_Mozilla
Rich-Text_Editing_in_Mozilla
Tags:
"NeedsEditorialReview", "editor", "Midas", "NeedsMarkupWork", "Fixit", "NeedsTechnicalReview"
"NeedsEditorialReview", "editor", "Midas", "NeedsMarkupWork", "Fixit", "NeedsTechnicalReview"
Content:

Revision 340813
Revision 462743
n7    <h3 id="Introduction">n
8      Introduction
9    </h3>
n11      Mozilla 1.3 introduces an implementation of Microsoft<sup>®n8      <span style="line-height: 1.3em;"><strong>SUBANG, (Perak).-
></sup> Internet Explorer's designMode feature. The rich-text edit></strong> Proyek pembangunan Tempat Pembuangan Akhir (TPA) sampah
>ing support in Mozilla 1.3 supports the designMode feature which > Panembong, yang berlokasi di Kelurahan Parung, Kecamatan/ Kabupa
>turns HTML documents into rich-text editors. Starting in Firefox >ten Subang senilai Rp6 miliar lebih yang seharusnya rampung 28 De
>3, Mozilla also supports Internet Explorer's <code>contentEditabl>sember 2012 lalu, hingga sekarang belum kunjung beres alias terbe
>e</code> attribute which allows any element to become editable or>ngkalai.</span>
> non-editable (the latter for when preventing change to fixed ele 
>ments in an editable environment). 
12    </p>
13    <h3 id="Setting_Up_Rich-Text_Editing">
14      Setting Up Rich-Text Editing
15    </h3>
16    <p>
17      Rich-text editing is initialized by setting the <code>desig
>nMode</code> property of a document to "On", such as the document 
> inside an iframe. Once <code>designMode</code> has been set to " 
>On", the document becomes a rich-text editing area and the user c 
>an type into it as if it were a textarea. The most basic keyboard 
> commands such as copy and paste are available, all others need t 
>o be implemented by the website. 
n20      Similarly, setting <code>contentEditable</code> to "true" an11      <span style="line-height: 1.3em;">Seperti diketahui proyek 
>llows you to make individual elements of a document editable.>tersebut bersumber dari Anggaran Pendapatan Belanja Negara (APBN)
 > Kementerian Pekerjaan Umum (KPU) melalui Dinas Permukiman dan Pe
 >rumahan (Diskimrum) Provinsi Jawa Barat.</span>
21    </p>
22    <h3 id="Executing_Commands">
23      Executing Commands
24    </h3>
25    <p>
26      When an HTML document has been switched to designMode, the 
>document object exposes the <code>execCommand</code> method which 
> allows one to run commands to manipulate the contents of the edi 
>table region. Most commands affect the document's selection (bold 
>, italics, etc), while others insert new elements (adding a link) 
> or affect an entire line (indenting). When using <code>contentEd 
>itable</code>, calling <code>execCommand</code> will affect the c 
>urrently active editable element. 
27    </p>
28    <pre class="brush: js">
29execCommand(String aCommandName, Boolean aShowDefaultUI, String a
>ValueArgument) 
30</pre>
31    <p>
32      <strong>Arguments</strong>
33    </p>
34    <blockquote>
35      <dl>
36        <dt>
37          String aCommandName
38        </dt>
39        <dd>
40          the name of the command
41        </dd>
42      </dl>
43      <dl>
44        <dt>
45          Boolean aShowDefaultUI
46        </dt>
47        <dd>
48          whether the default user interface should be shown. Thi
>s is not implemented in Mozilla. 
49        </dd>
50      </dl>
51      <dl>
52        <dt>
53          String aValueArgument
54        </dt>
55        <dd>
56          some commands (such as insertimage) require an extra va
>lue argument (the image's url). Pass an argument of <code>null</c 
>ode> if no argument is needed. 
57        </dd>
58      </dl>
59    </blockquote>
60    <p>
61      <strong>Commands</strong>
62    </p>
63    <blockquote>
64      <dl>
65        <dt>
66          backColor
67        </dt>
68        <dd>
69          Changes the document background color. In styleWithCss 
>mode, it affects the background color of the containing block ins 
>tead.&nbsp;This requires a color value string to be passed in as  
>a value argument. (Internet Explorer uses this to set text backgr 
>ound color.) 
70        </dd>
71      </dl>
72      <dl>
73        <dt>
74          bold
75        </dt>
76        <dd>
77          Toggles bold on/off for the selection or at the inserti
>on point. (Internet Explorer uses the STRONG tag instead of B.) 
78        </dd>
79      </dl>
80      <dl>
81        <dt>
82          contentReadOnly
83        </dt>
84        <dd>
85          Makes the content document either read-only or editable
>. This requires a boolean true/false to be passed in as a value a 
>rgument. (Not supported by Internet Explorer.) 
86        </dd>
87      </dl>
88      <dl>
89        <dt>
90          copy
91        </dt>
92        <dd>
93          Copies the current selection to the clipboard. Clipboar
>d capability must be enabled in the user.js preference file. See 
94        </dd>
95      </dl>
96      <dl>
97        <dt>
98          createLink
99        </dt>
100        <dd>
101          Creates an anchor link from the selection, only if ther
>e is a selection. This requires the HREF URI string to be passed  
>in as a value argument. The URI must contain at least a single ch 
>aracter, which may be a white space. (Internet Explorer will crea 
>te a link with a null URI value.) 
102        </dd>
103      </dl>
104      <dl>
105        <dt>
106          cut
107        </dt>
108        <dd>
109          Cuts the current selection and copies it to the clipboa
>rd. Clipboard capability must be enabled in the user.js preferenc 
>e file. See 
110        </dd>
111      </dl>
112      <dl>
113        <dt>
114          decreaseFontSize
115        </dt>
116        <dd>
117          Adds a SMALL tag around the selection or at the inserti
>on point. (Not supported by Internet Explorer.) 
118        </dd>
119      </dl>
120      <dl>
121        <dt>
122          delete
123        </dt>
124        <dd>
125          Deletes the current selection.
126        </dd>
127      </dl>
128      <dl>
129        <dt>
130          enableInlineTableEditing
131        </dt>
132        <dd>
133          Enables or disables the table row and column insertion 
>and deletion controls. (Not supported by Internet Explorer.) 
134        </dd>
135      </dl>
136      <dl>
137        <dt>
138          enableObjectResizing
139        </dt>
140        <dd>
141          Enables or disables the resize handles on images and ot
>her resizable objects. (Not supported by Internet Explorer.) 
142        </dd>
143      </dl>
144      <dl>
145        <dt>
146          fontName
147        </dt>
148        <dd>
149          Changes the font name for the selection or at the inser
>tion point. This requires a font name string ("Arial" for example 
>) to be passed in as a value argument. 
150        </dd>
151      </dl>
152      <dl>
153        <dt>
154          fontSize
155        </dt>
156        <dd>
157          Changes the font size for the selection or at the inser
>tion point. This requires an HTML font size (1-7) to be passed in 
> as a value argument. 
158        </dd>
159      </dl>
160      <dl>
161        <dt>
162          foreColor
163        </dt>
164        <dd>
165          Changes a font color for the selection or at the insert
>ion point. This requires a color value string to be passed in as  
>a value argument. 
166        </dd>
167      </dl>
168      <dl>
169        <dt>
170          formatBlock
171        </dt>
172        <dd>
173          Adds an HTML block-style tag around the line containing
> the current selection, replacing the block element containing th 
>e line if one exists (in Firefox, BLOCKQUOTE is the exception - i 
>t will wrap any containing block element). Requires a tag-name st 
>ring to be passed in as a value argument. Virtually all block sty 
>le tags can be used (eg. "H1", "P", "DL", "BLOCKQUOTE"). (Interne 
>t Explorer supports only heading tags H1 - H6, ADDRESS, and PRE,  
>which must also include the tag delimiters &lt; &gt;, such as "&l 
>t;H1&gt;".) 
174        </dd>
175      </dl>
176      <dl>
177        <dt>
178          forwardDelete
179        </dt>
180        <dd>
181          Deletes the character ahead of the <a href="http://en.w
>ikipedia.org/wiki/Cursor_%28computers%29" title="Cursor (computer 
>s)">cursor</a>'s position.&nbsp; It is the same as hitting the de 
>lete key. 
182        </dd>
183        <dt>
184          heading
185        </dt>
186        <dd>
187          Adds a heading tag around a selection or insertion poin
>t line. Requires the tag-name string to be passed in as a value a 
>rgument (i.e. "H1", "H6"). (Not supported by Internet Explorer.) 
188        </dd>
189      </dl>
190      <dl>
191        <dt>
192          hiliteColor
193        </dt>
194        <dd>
195          Changes the background color for the selection or at th
>e insertion point. Requires a color value string to be passed in  
>as a value argument. UseCSS must be turned on for this to functio 
>n. (Not supported by Internet Explorer.) 
196        </dd>
197      </dl>
198      <dl>
199        <dt>
200          increaseFontSize
201        </dt>
202        <dd>
203          Adds a BIG tag around the selection or at the insertion
> point. (Not supported by Internet Explorer.) 
204        </dd>
205      </dl>
206      <dl>
207        <dt>
208          indent
209        </dt>
210        <dd>
211          Indents the line containing the selection or insertion 
>point. In Firefox, if the selection spans multiple lines at diffe 
>rent levels of indentation, only the least indented lines in the  
>selection will be indented. 
212        </dd>
213      </dl>
214      <dl>
215        <dt>
216          insertBrOnReturn
217        </dt>
218        <dd>
219          Controls whether the Enter key inserts a br tag or spli
>ts the current block element into two. (Not supported by Internet 
> Explorer.) 
220        </dd>
221      </dl>
222      <dl>
223        <dt>
224          insertHorizontalRule
225        </dt>
226        <dd>
227          Inserts a horizontal rule at the insertion point (delet
>es selection). 
228        </dd>
229      </dl>
230      <dl>
231        <dt>
232          insertHTML
233        </dt>
234        <dd>
235          Inserts an HTML string at the insertion point (deletes 
>selection). Requires a valid HTML string to be passed in as a val 
>ue argument. (Not supported by Internet Explorer.) 
236        </dd>
237      </dl>
238      <dl>
239        <dt>
240          insertImage
241        </dt>
242        <dd>
243          Inserts an image at the insertion point (deletes select
>ion). Requires the image SRC URI string to be passed in as a valu 
>e argument. The URI must contain at least a single character, whi 
>ch may be a white space. (Internet Explorer will create a link wi 
>th a null URI value.) 
244        </dd>
245      </dl>
246      <dl>
247        <dt>
248          insertOrderedList
249        </dt>
250        <dd>
251          Creates a numbered ordered list for the selection or at
> the insertion point. 
252        </dd>
253      </dl>
254      <dl>
255        <dt>
256          insertUnorderedList
257        </dt>
258        <dd>
259          Creates a bulleted unordered list for the selection or 
>at the insertion point. 
260        </dd>
261      </dl>
262      <dl>
263        <dt>
264          insertParagraph
265        </dt>
266        <dd>
267          Inserts a paragraph around the selection or the current
> line. (Internet Explorer inserts a paragraph at the insertion po 
>int and deletes the selection.) 
268        </dd>
269        <dt>
270          insertText
271        </dt>
272        <dd>
273          Inserts the given plain text at the insertion point (de
>letes selection). 
274        </dd>
275      </dl>
276      <dl>
277        <dt>
278          italic
279        </dt>
280        <dd>
281          Toggles italics on/off for the selection or at the inse
>rtion point. (Internet Explorer uses the EM tag instead of I.) 
282        </dd>
283      </dl>
284      <dl>
285        <dt>
286          justifyCenter
287        </dt>
288        <dd>
289          Centers the selection or insertion point.
290        </dd>
291      </dl>
292      <dl>
293        <dt>
294          justifyFull
295        </dt>
296        <dd>
297          Justifies the selection or insertion point.
298        </dd>
299      </dl>
300      <dl>
301        <dt>
302          justifyLeft
303        </dt>
304        <dd>
305          Justifies the selection or insertion point to the left.
306        </dd>
307      </dl>
308      <dl>
309        <dt>
310          justifyRight
311        </dt>
312        <dd>
313          Right-justifies the selection or the insertion point.
314        </dd>
315      </dl>
316      <dl>
317        <dt>
318          outdent
319        </dt>
320        <dd>
321          Outdents the line containing the selection or insertion
> point. 
322        </dd>
323      </dl>
324      <dl>
325        <dt>
326          paste
327        </dt>
328        <dd>
329          Pastes the clipboard contents at the insertion point (r
>eplaces current selection). Clipboard capability must be enabled  
>in the user.js preference file. See 
330        </dd>
331      </dl>
332      <dl>
333        <dt>
334          redo
335        </dt>
336        <dd>
337          Redoes the previous undo command.
338        </dd>
339      </dl>
340      <dl>
341        <dt>
342          removeFormat
343        </dt>
344        <dd>
345          Removes all formatting from the current selection.
346        </dd>
347      </dl>
348      <dl>
349        <dt>
350          selectAll
351        </dt>
352        <dd>
353          Selects all of the content of the editable region.
354        </dd>
355      </dl>
356      <dl>
357        <dt>
358          strikeThrough
359        </dt>
360        <dd>
361          Toggles strikethrough on/off for the selection or at th
>e insertion point. 
362        </dd>
363      </dl>
364      <dl>
365        <dt>
366          subscript
367        </dt>
368        <dd>
369          Toggles subscript on/off for the selection or at the in
>sertion point. 
370        </dd>
371      </dl>
372      <dl>
373        <dt>
374          superscript
375        </dt>
376        <dd>
377          Toggles superscript on/off for the selection or at the 
>insertion point. 
378        </dd>
379      </dl>
380      <dl>
381        <dt>
382          underline
383        </dt>
384        <dd>
385          Toggles underline on/off for the selection or at the in
>sertion point. 
386        </dd>
387      </dl>
388      <dl>
389        <dt>
390          undo
391        </dt>
392        <dd>
393          Undoes the last executed command.
394        </dd>
395      </dl>
396      <dl>
397        <dt>
398          unlink
399        </dt>
400        <dd>
401          Removes the anchor tag from a selected anchor link.
402        </dd>
403      </dl>
404      <dl>
405        <dt>
406          useCSS {{ Deprecated_inline() }}
407        </dt>
408        <dd>
409          Toggles the use of HTML tags or CSS for the generated m
>arkup. Requires a boolean true/false as a value argument. NOTE: T 
>his argument is logically backwards (i.e. use false to use CSS, t 
>rue to use HTML). (Not supported by Internet Explorer.) This has  
>been deprecated; use the <em>styleWithCSS</em> command instead. 
410        </dd>
411      </dl>
412      <dl>
413        <dt>
414          styleWithCSS
415        </dt>
416        <dd>
417          Replaces the <em>useCSS</em> command; argument works as
> expected, i.e. true modifies/generates <em>style</em> attributes 
> in markup, false generates formatting elements. 
418        </dd>
419      </dl>
420    </blockquote>
421    <h3 id="Internet_Explorer_Differences">
422      Internet Explorer Differences
423    </h3>
424    <p>
425      One major difference between Mozilla and Internet Explorer 
>that affects designMode is the generated code in the editable doc 
>ument: while Internet Explorer uses HTML tags (em, i, etc), Mozil 
>la 1.3 will generate by default spans with inline style rules. Th 
>e <code>useCSS</code> command can be used to toggle between CSS a 
>nd HTML markup creation. 
n428      <strong>Figure 1&nbsp;: Generated HTML differences</strong>n14      <span style="line-height: 1.3em;">Lantaran masih terbengkal
 >ai, maka kemudian pemerintah merealisasikan dana tambahan sebesar
 > Rp 2 milyar, namun karena pengerjaannya yang asal-asalan, proyek
 > TPA yang menghabiskan dana 8 milyar itu, hingga bulan September 
 >2013 ini, yang di kerjakan oleh PT. Nugraha Adi Taruna tetap masi
 >h terbengkalai dan dibiarkan begitu saja.</span>
n431      Mozilla:n17      <span style="line-height: 1.3em;">Hasil investigasi dan ket
 >erangan yang di himpun Perak dilapangan, bahwa produk dari konsul
 >tan yang biasa digunakan dalam membuat sebuah perencanaan detail 
 >bangunan sipil seperti gedung, jalan, jembatan, bendungan dan seb
 >againya atau detail enginaring design (DED) Diskimrum Jabar, proy
 >ek tersebut adalah Peningkatan Kinerja TPA Panembong dengan nomor
 > KU.08.08-PPLP.09/PPSP-02/L-11 tertanggal 16 Juli 2012, APBN tahu
 >n 2012 dan kontraktornya PT. Nugraha Adi Taruna yang ditandatanga
 >ni Kepala Distarkimsih Kab. Subang, saat dijabat oleh Rachmat Fat
 >urrahman dan Pejabat Pelaksana Teknis Kegiatan (PPTK), Agus Firma
 >nsyah, S.T.</span>
432    </p>
433    <pre class="brush: html">
434&lt;span style="font-weight: bold;"&gt;I love geckos.&lt;/span&gt
>; 
435&lt;span style="font-weight: bold; font-style: italic; 
436    text-decoration: underline;"&gt;Dinosaurs are big.&lt;/span&g
>t; 
437</pre>
438    <p>
439      Internet Explorer:
440    </p>
441    <pre class="brush: html">
442&lt;STRONG&gt;I love geckos.&lt;/STRONG&gt;
443&lt;STRONG&gt;&lt;EM&gt;&lt;U&gt;Dinosaurs are big.&lt;/U&gt;&lt;
>/EM&gt;&lt;/STRONG&gt; 
444</pre>
445    <p>
446      Another difference between Mozilla and IE is how to access 
>the document object of an iframe, which is usually used in conjun 
>ction with designMode. Mozilla uses the W3C standard way, namely  
><code>IFrameElement.<a class="external" href="http://www.w3.org/T 
>R/DOM-Level-2-HTML/html.html#ID-38538621">contentDocument</a></co 
>de>, while IE requires <code>IFrameElement.document</code>. 
n449      <em><strong>DevEdge</strong></em> provides a JavaScript heln20      <span style="line-height: 1.3em;">Tidak hanya itu, menurut 
>per class, <code><a href="/en/Rich-Text_Editing_in_Mozilla/Class_>sumber yang enggan ditulis jati dirinya mengatakan, kontraktor at
>xbDesignMode" title="en/Rich-Text_Editing_in_Mozilla/Class_xbDesi>au pemborong proyek itu, bernama Yayan, adalah adiknya Wakil Ketu
>gnMode">xbDesignMode</a></code>, which is a wrapper for the desig>a DPRD Subang, H. Oman Warjoman, ujarnya.</span>
>nMode feature which hides the differences between IE and Mozilla. 
n452      <br>n23      <span style="line-height: 1.3em;">Sementara tanggapan dari 
 >Pemerhati Lingkungan, Asep Batman Ketua LSM Forum Masyarakat Pedu
 >li (FMP) yang juga Koordinator Komunitas Anak Muda Peduli Anti Ko
 >rupsi (KAMPAK), kepada Perak menegaskan, di Kabupaten Subang bany
 >ak terjadinya penyimpangan dalam pengerjaan proyek-proyek, yang d
 >i kerjakan oleh kontraktor yang tidak bertanggung jawab, sehingga
 > hasilnya malah amburadul karena pengerjaannya yang asal-asalan, 
 >dan salah satunya proyek TPA sampah, ujarnya.</span>
453      <strong>Event Handling Disabled</strong>
n456      A further difference for Mozilla is that once a document isn26      <span style="line-height: 1.3em;">Dikatakan Asep Batman, Ba
> switched to designMode, all events on that particular document a>dan Pemeriksa Keuangan dan Pembangunan (BPKP) Provinsi Jabar suda
>re disabled. Once designMode is turned off however (as this now s>h saatnya melakukan Audit Investigasi, kata Asep dan mendesak Kej
>eems possible in Mozilla 1.5) the events become active again.>ari Subang agar menindaklanjuti dan menyeret para pelakunya hingg
 >a ke pengadilan, “atas dasar hasil penelusuran tim kami, dalam pe
 >ngerjaan proyek TPA tersebut, telah banyak penyimpangan dan sudah
 > layak bagi pihak BPKP Jabar untuk melakukan Audit investigasi ke
 > lapangan, serta mengauditnya.</span>
n459      <strong>More information</strong> can be found in the <a hrn29      <span style="line-height: 1.3em;">Untuk itu, pihak Kejari S
>ef="/en/Migrate_apps_from_Internet_Explorer_to_Mozilla#Rich_text_>ubang harus serius dalam penanganan kasus penyimpangan proyek TPA
>editing" title="en/Migrate_apps_from_Internet_Explorer_to_Mozilla> ini, menyeret para tersangkanya ke meja hijau, tanpa pandang bul
>#Rich_text_editing">Rich text editing</a> section of <a href="/en>u terhadap para pihak yang terlibat di dalamnya,” tegas Asep, di 
>/Migrate_apps_from_Internet_Explorer_to_Mozilla" title="en/Migrat>Posko Pusat FMP Subang, Jum’at (30/8).</span>
>e_apps_from_Internet_Explorer_to_Mozilla">Migrate apps from Inter 
>net Explorer to Mozilla</a>. 
460    </p>
461    <h3 id="Examples">
462      Examples
463    </h3>
464    <p>
465      <em><strong>Please note:</strong> The example files are sti
>ll being migrated from another site. They are not available at th 
>is time.</em> --<a href="/User:Fumble" title="User:Fumble">fumble 
></a> 18:13, 24 Apr 2005 (PDT) 
466    </p>
467    <h4 id="Example_1">
468      Example 1
469    </h4>
470    <p>
471      The first example is an HTML document setting its own <code
>>designMode</code> to "On". This makes the entire document editab 
>le in Mozilla 1.3. Internet Explorer, however, does not allow jav 
>ascript to change the current document's designMode. For it to wo 
>rk in Internet Explorer, the <code>contentEditable</code> attribu 
>te of the body tag needs to be set to "true". 
n474      <strong>Figure 2&nbsp;: First example</strong>n32      <span style="line-height: 1.3em;">Sebelumnya, Kepala Kejaks
 >aan Negeri (Kajari) Subang, Diding Kurniawan, S.H Rabu (28/8) dik
 >antornya menegaskan, bahwa atas dasar laporan dan informasi dari 
 >masyarakat, kasus tersebut sudah ditangani pihak Kejari dan terus
 > ditindak lanjuti, "mengenai penanganan kasus itu, beberapa pihak
 > terkait sudah dipanggil sebagai saksi, dan mereka menerangkan, b
 >ahwa kendala belum terselesaikannya pengerjaan proyek TPA, karena
 > lokasi proyek terkena bencana alam, bahkan kontraktornya telah m
 >engajukan dana tambahan kurang lebih Rp 2 milyar hingga totalnya 
 >mencapai Rp 8 milyar rupiah.</span>
475    </p>
476    <pre class="brush: js">
477HTML:
478&lt;body contentEditable="true" onload="load()"&gt;
479 
480JavaScript:
481function load(){
482  window.document.designMode = "On";
483}
484</pre>
485    <h4 id="Example_2">
486      Example 2
487    </h4>
488    <p>
489      The second example is a simple rich text editing page, wher
>e text can be bolded/italicized/underlined, new links can be adde 
>d and the color of text changed. The example page consists of an  
>iframe, which will be the rich editing area, as well as elements  
>for basic editing commands such as bold/italics/text color. 
n492      <strong>Figure 3&nbsp;: Setting up rich-text editing</stronn35      <span style="line-height: 1.3em;">Lanjut dia, walaupun suda
>g>>h ada penambahan anggaran dalam pengerjaan proyek itu, tetapi pad
 >a kenyataannya, hingga saat ini belum juga diselesaikan, untuk it
 >u, kami tetap terus menindak lanjuti kasus ini.” tandasnya.</span
 >>
493    </p>
494    <pre class="brush: js">
495HTML:
496&lt;body onload="load()"&gt;
497 
498JavaScript:
499function load(){
500  getIFrameDocument("editorWindow").designMode = "On";
501}
502 
503function getIFrameDocument(aID){
504  // if contentDocument exists, W3C compliant (Mozilla)
505  if (document.getElementById(aID).contentDocument){
506    return document.getElementById(aID).contentDocument;
507  } else {
508    // IE
509    return document.frames[aID].document;
510  }
511}
512</pre>
513    <p>
514      The example contains a <code>doRichEditCommand</code> funct
>ion that makes it easier to execute commands on the iframe's docu 
>ment and keeps the HTML code clean. The function executed the req 
>uested command using <code>execCommand()</code> and then sets foc 
>us back to the editable document, as clicking on a button will se 
>t focus on the button itself, which breaks the editing flow. 
n517      <strong>Figure 4&nbsp;: Executing Rich Editing Commands</stn38      <span style="line-height: 1.3em;">Seperti telah diberitakan
>rong>> Perak, edisi sebelumnya, bahwa pengerjaan proyek tersebut, dijul
 >uki sebagai proyek siluman, karena dalam proses pengerjaannya, di
 >lokasi tidak nampak terpampang papan informasi dan gambar proyek,
 > yang mana dipapan tersebut dapat tercantum, seperti jenis pekerj
 >aan, nomor kontrak, nama pelaksana, volume, sumber dana, nilai ko
 >ntrak atau nominal anggarannya dan masa pelaksanaan, bahkan dikan
 >tor Direksikit pun tidak terpampang, padahal dua hal itu adalah s
 >umber informasi penting bagi masyarakat untuk dapat mengetahui.</
 >span>
t519    <pre class="brush: js">t40    <p>
520HTML:41      <span style="line-height: 1.3em;">Sebelumnya, Kepala Bidang
 > Tataruang dan Permukiman (Tarkim) Distarkimsih Subang, Feri Sela
 >sa (26/2) membenarkan, “Pengerjaan proyek itu, selain tidak kunju
 >ng beres, dilokasi proyek itu pun, kerap terjadi longsor, hingga 
 >sebanyak empat kali,” ujarnya.</span>
521&lt;button onclick="doRichEditCommand('bold')" style="font-weight
>:bold;"&gt;B&lt;/button&gt; 
522 
523JavaScript:
524function doRichEditCommand(aName, aArg){
525  getIFrameDocument('editorWindow').execCommand(aName,false, aArg
>); 
526  document.getElementById('editorWindow').contentWindow.focus()
527}
528</pre>
529    <h3 id="Example.3A_a_simple_but_complete_Rich_Text_Editor">
530      Example: a simple but complete Rich Text Editor
531    </h3>42    </p>
532    <div style="height: 500px; width: auto; overflow: auto;">43    <p>
533      <pre class="brush: html">44      <span style="line-height: 1.3em;">Sementara, Kadistarkimsih
 > Subang, Sumasna, S.T., Mum yang sebelumnya dijabat oleh Rahmat F
 >aturrahman kepada Perak mengaku, “proyek TPA itu, langsung direal
 >isasikan dari Diskimrum Provinsi Jabar dan diluar kewenangan kami
 >, untuk itu saya tidak bisa memberikan keterangan lebih jelas, ka
 >rena takut salah,” ujar Sumasna.</span>
534&lt;!doctype html&gt;
535&lt;html&gt;
536&lt;head&gt;
537&lt;title&gt;Rich Text Editor&lt;/title&gt;
538&lt;script type="text/javascript"&gt;
539var oDoc, sDefTxt;
540 
541function initDoc() {
542  oDoc = document.getElementById("textBox");
543  sDefTxt = oDoc.innerHTML;
544  if (document.compForm.switchMode.checked) { setDocMode(true); }
545}
546 
547function formatDoc(sCmd, sValue) {
548  if (validateMode()) { document.execCommand(sCmd, false, sValue)
>; oDoc.focus(); } 
549}
550 
551function validateMode() {
552  if (!document.compForm.switchMode.checked) { return true ; }
553  alert("Uncheck \"Show HTML\".");
554  oDoc.focus();
555  return false;
556}
557 
558function setDocMode(bToSource) {
559  var oContent;
560  if (bToSource) {
561    oContent = document.createTextNode(oDoc.innerHTML);
562    oDoc.innerHTML = "";
563    var oPre = document.createElement("pre");
564    oDoc.contentEditable = false;
565    oPre.id = "sourceText";
566    oPre.contentEditable = true;
567    oPre.appendChild(oContent);
568    oDoc.appendChild(oPre);
569  } else {
570    if (document.all) {
571      oDoc.innerHTML = oDoc.innerText;
572    } else {
573      oContent = document.createRange();
574      oContent.selectNodeContents(oDoc.firstChild);
575      oDoc.innerHTML = oContent.toString();
576    }
577    oDoc.contentEditable = true;
578  }
579  oDoc.focus();
580}
581 
582function printDoc() {
583  if (!validateMode()) { return; }
584  var oPrntWin = window.open("","_blank","width=450,height=470,le
>ft=400,top=100,menubar=yes,toolbar=no,location=no,scrollbars=yes" 
>); 
585  oPrntWin.document.open();
586  oPrntWin.document.write("&lt;!doctype html&gt;&lt;html&gt;&lt;h
>ead&gt;&lt;title&gt;Print&lt;\/title&gt;&lt;\/head&gt;&lt;body on 
>load=\"print();\"&gt;" + oDoc.innerHTML + "&lt;\/body&gt;&lt;\/ht 
>ml&gt;"); 
587  oPrntWin.document.close();
588}
589&lt;/script&gt;
590&lt;style type="text/css"&gt;
591.intLink { cursor: pointer; }
592img.intLink { border: 0; }
593#toolBar1 select { font-size:10px; }
594#textBox {
595  width: 540px;
596  height: 200px;
597  border: 1px #000000 solid;
598  padding: 12px;
599  overflow: scroll;
600}
601#textBox #sourceText {
602  padding: 0;
603  margin: 0;
604  min-width: 498px;
605  min-height: 200px;
606}
607#editMode label { cursor: pointer; }
608&lt;/style&gt;
609&lt;/head&gt;
610&lt;body onload="initDoc();"&gt;
611&lt;form name="compForm" method="post" action="sample.php" onsubm
>it="if(validateMode()){this.myDoc.value=oDoc.innerHTML;return tru 
>e;}return false;"&gt; 
612&lt;input type="hidden" name="myDoc"&gt;
613&lt;div id="toolBar1"&gt;
614&lt;select onchange="formatDoc('formatblock',this[this.selectedIn
>dex].value);this.selectedIndex=0;"&gt; 
615&lt;option selected&gt;- formatting -&lt;/option&gt;
616&lt;option value="h1"&gt;Title 1 &amp;lt;h1&amp;gt;&lt;/option&gt
>; 
617&lt;option value="h2"&gt;Title 2 &amp;lt;h2&amp;gt;&lt;/option&gt
>; 
618&lt;option value="h3"&gt;Title 3 &amp;lt;h3&amp;gt;&lt;/option&gt
>; 
619&lt;option value="h4"&gt;Title 4 &amp;lt;h4&amp;gt;&lt;/option&gt
>; 
620&lt;option value="h5"&gt;Title 5 &amp;lt;h5&amp;gt;&lt;/option&gt
>; 
621&lt;option value="h6"&gt;Subtitle &amp;lt;h6&amp;gt;&lt;/option&g
>t; 
622&lt;option value="p"&gt;Paragraph &amp;lt;p&amp;gt;&lt;/option&gt
>; 
623&lt;option value="pre"&gt;Preformatted &amp;lt;pre&amp;gt;&lt;/op
>tion&gt; 
624&lt;/select&gt;
625&lt;select onchange="formatDoc('fontname',this[this.selectedIndex
>].value);this.selectedIndex=0;"&gt; 
626&lt;option class="heading" selected&gt;- font -&lt;/option&gt;
627&lt;option&gt;Arial&lt;/option&gt;
628&lt;option&gt;Arial Black&lt;/option&gt;
629&lt;option&gt;Courier New&lt;/option&gt;
630&lt;option&gt;Times New Roman&lt;/option&gt;
631&lt;/select&gt;
632&lt;select onchange="formatDoc('fontsize',this[this.selectedIndex
>].value);this.selectedIndex=0;"&gt; 
633&lt;option class="heading" selected&gt;- size -&lt;/option&gt;
634&lt;option value="1"&gt;Very small&lt;/option&gt;
635&lt;option value="2"&gt;A bit small&lt;/option&gt;
636&lt;option value="3"&gt;Normal&lt;/option&gt;
637&lt;option value="4"&gt;Medium-large&lt;/option&gt;
638&lt;option value="5"&gt;Big&lt;/option&gt;
639&lt;option value="6"&gt;Very big&lt;/option&gt;
640&lt;option value="7"&gt;Maximum&lt;/option&gt;
641&lt;/select&gt;
642&lt;select onchange="formatDoc('forecolor',this[this.selectedInde
>x].value);this.selectedIndex=0;"&gt; 
643&lt;option class="heading" selected&gt;- color -&lt;/option&gt;
644&lt;option value="red"&gt;Red&lt;/option&gt;
645&lt;option value="blue"&gt;Blue&lt;/option&gt;
646&lt;option value="green"&gt;Green&lt;/option&gt;
647&lt;option value="black"&gt;Black&lt;/option&gt;
648&lt;/select&gt;
649&lt;select onchange="formatDoc('backcolor',this[this.selectedInde
>x].value);this.selectedIndex=0;"&gt; 
650&lt;option class="heading" selected&gt;- background -&lt;/option&
>gt; 
651&lt;option value="red"&gt;Red&lt;/option&gt;
652&lt;option value="green"&gt;Green&lt;/option&gt;
653&lt;option value="black"&gt;Black&lt;/option&gt;
654&lt;/select&gt;
655&lt;/div&gt;
656&lt;div id="toolBar2"&gt;
657&lt;img class="intLink" title="Clean" onclick="if(validateMode()&
>amp;&amp;confirm('Are you sure?')){oDoc.innerHTML=sDefTxt};" src= 
>"data:image/gif;base64,R0lGODlhFgAWAIQbAD04KTRLYzFRjlldZl9vj1dusY 
>14WYODhpWIbbSVFY6O7IOXw5qbms+wUbCztca0ccS4kdDQjdTLtMrL1O3YitHa7OP 
>csd/f4PfvrvDv8Pv5xv///////////////////yH5BAEKAB8ALAAAAAAWABYAAAV8 
>4CeOZGmeaKqubMteyzK547QoBcFWTm/jgsHq4rhMLoxFIehQQSAWR+Z4IAyaJ0kEg 
>tFoLIzLwRE4oCQWrxoTOTAIhMCZ0tVgMBQKZHAYyFEWEV14eQ8IflhnEHmFDQkAiS 
>kQCI2PDC4QBg+OAJc0ewadNCOgo6anqKkoIQA7" /&gt; 
658&lt;img class="intLink" title="Print" onclick="printDoc();" src="
>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw 
>7AAAABGdBTUEAALGPC/xhBQAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAA 
>CxMBAJqcGAAAAAd0SU1FB9oEBxcZFmGboiwAAAAIdEVYdENvbW1lbnQA9syWvwAAA 
>uFJREFUOMvtlUtsjFEUx//n3nn0YdpBh1abRpt4LFqtqkc3jRKkNEIsiIRIBBEhJJ 
>pKlIVo4m1RRMKKjQiRMJRUqUdKPT71qpIpiRKPaqdF55tv5vvusZjQTjOlseUkd3X 
>u/3dPzusC/22wtu2wRn+jG5So/OCDh8ycMJDflehMlkJkVK7KUYN+ufzA/RttH76z 
>aVocDptRxzQtNi3mRWuPc+6cKtlXZ/sddP2uu9uXlmYXZ6Qm8v4Tz8lhF1H+zDQXt 
>7S8oLMXtbF4e8QaFHjj3kbP2MzkktHpiTjp9VH6iHiA+whtAsX5brpwueMGdONdf/ 
>2A4M7ukDs1JW662+XkqTkeUoqjKtOjm2h53YFL15pSJ04Zc94wdtibr26fXlC2mzR 
>vBccEbz2kiRFD414tKMlEZbVGT33+qCoHgha81SWYsew0r1uzfNylmtpx80pngQQ9 
>1LwVk2JGvGnfvZG6YcYRAT16GFtW5kKKfo1EQLtfh5Q2etT0BIWF+aitq4fDbk+Im 
>Yo1OxvGF03waFJQvBCkvDffRyEtxQiFFYgAZTHS0zwAGD7fG5TNnYNTp8/FzvGwJO 
>fmgG7GOx0SAKKgQgDMgKBI0NJGMEImpGDk5+WACEwEd0ywblhGUZ4Hw5OdUekRBLT 
>7DTgdEgxACsIznx8zpmWh7k4rkpJcuHDxCul6MDsmmBXDlWCH2+XozSgBnzsNCEE4 
>euYV4pwCpsWYPW0UHDYBKSWu1NYjENDReqtKjwn2+zvtTc1vMSTB/mvev/WEYSlAS 
>sLimcOhOBJxw+N3aP/SjefNL5GePZmpu4kG7OPr1+tOfPyUu3BecWYKcwQcDFmwFK 
>AUo90fhKDInBCAmvqnyMgqUEagQwCoHBDc1rjv9pIlD8IbVkz6qYViIBQGTJPx4k0 
>XpIgEZoRN1Da0cij4VfR0ta3WvBXH/rjdCufv6R2zPgPH/e4pxSBCpeatqPrjNiso 
>203/5s/zA171Mv8+w1LOAAAAAElFTkSuQmCC"&gt; 
659&lt;img class="intLink" title="Undo" onclick="formatDoc('undo');"
> src="data:image/gif;base64,R0lGODlhFgAWAOMKADljwliE33mOrpGjuYKl8 
>aezxqPD+7/I19DV3NHa7P///////////////////////yH5BAEKAA8ALAAAAAAWAB 
>YAAARR8MlJq7046807TkaYeJJBnES4EeUJvIGapWYAC0CsocQ7SDlWJkAkCA6ToMY 
>WIARGQF3mRQVIEjkkSVLIbSfEwhdRIH4fh/DZMICe3/C4nBQBADs=" /&gt; 
660&lt;img class="intLink" title="Redo" onclick="formatDoc('redo');"
> src="data:image/gif;base64,R0lGODlhFgAWAMIHAB1ChDljwl9vj1iE34Kl8 
>aPD+7/I1////yH5BAEKAAcALAAAAAAWABYAAANKeLrc/jDKSesyphi7SiEgsVXZEA 
>TDICqBVJjpqWZt9NaEDNbQK1wCQsxlYnxMAImhyDoFAElJasRRvAZVRqqQXUy7Cgx 
>4TC6bswkAOw==" /&gt; 
661&lt;img class="intLink" title="Remove formatting" onclick="format
>Doc('removeFormat')" src="data:image/png;base64,iVBORw0KGgoAAAANS 
>UhEUgAAABYAAAAWCAYAAADEtGw7AAAABGdBTUEAALGPC/xhBQAAAAZiS0dEAP8A/w 
>D/oL2nkwAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAAd0SU1FB9oECQMCKPI8CIIAAAA 
>IdEVYdENvbW1lbnQA9syWvwAAAuhJREFUOMtjYBgFxAB501ZWBvVaL2nHnlmk6mXC 
>JbF69zU+Hz/9fB5O1lx+bg45qhl8/fYr5it3XrP/YWTUvvvk3VeqGXz70TvbJy8+W 
>v39+2/Hz19/mGwjZzuTYjALuoBv9jImaXHeyD3H7kU8fPj2ICML8z92dlbtMzdeiG 
>3fco7J08foH1kurkm3E9iw54YvKwuTuom+LPt/BgbWf3//sf37/1/c02cCG1lB8f/ 
>/f95DZx74MTMzshhoSm6szrQ/a6Ir/Z2RkfEjBxuLYFpDiDi6Af///2ckaHBp7+7w 
>mavP5n76+P2ClrLIYl8H9W36auJCbCxM4szMTJac7Kza////R3H1w2cfWAgafPbqs 
>5g7D95++/P1B4+ECK8tAwMDw/1H7159+/7r7ZcvPz4fOHbzEwMDwx8GBgaGnNatfH 
>Zx8zqrJ+4VJBh5CQEGOySEua/v3n7hXmqI8WUGBgYGL3vVG7fuPK3i5GD9/fja7Zs 
>MDAzMG/Ze52mZeSj4yu1XEq/ff7W5dvfVAS1lsXc4Db7z8C3r8p7Qjf///2dnZGxl 
>qJuyr3rPqQd/Hhyu7oSpYWScylDQsd3kzvnH738wMDzj5GBN1VIWW4c3KDon7VOvm 
>7S3paB9u5qsU5/x5KUnlY+eexQbkLNsErK61+++VnAJcfkyMTIwffj0QwZbJDKjcE 
>Ts1Y8evyd48toz8y/ffzv//vPP4veffxpX77z6l5JewHPu8MqTDAwMDLzyrjb/mZm 
>0JcT5Lj+89+Ybm6zz95oMh7s4XbygN3Sluq4Mj5K8iKMgP4f0////fv77//8nLy+7 
>MCcXmyYDAwODS9jM9tcvPypd35pne3ljdjvj26+H2dhYpuENikgfvQeXNmSl3tqep 
>xXsqhXPyc666s+fv1fMdKR3TK72zpix8nTc7bdfhfkEeVbC9KhbK/9iYWHiErbu6M 
>WbY/7//8/4//9/pgOnH6jGVazvFDRtq2VgiBIZrUTIBgCk+ivHvuEKwAAAAABJRU5 
>ErkJggg=="&gt; 
662&lt;img class="intLink" title="Bold" onclick="formatDoc('bold');"
> src="data:image/gif;base64,R0lGODlhFgAWAID/AMDAwAAAACH5BAEAAAAAL 
>AAAAAAWABYAQAInhI+pa+H9mJy0LhdgtrxzDG5WGFVk6aXqyk6Y9kXvKKNuLbb6zg 
>MFADs=" /&gt; 
663&lt;img class="intLink" title="Italic" onclick="formatDoc('italic
>');" src="data:image/gif;base64,R0lGODlhFgAWAKEDAAAAAF9vj5WIbf/// 
>yH5BAEAAAMALAAAAAAWABYAAAIjnI+py+0Po5x0gXvruEKHrF2BB1YiCWgbMFIYps 
>byTNd2UwAAOw==" /&gt; 
664&lt;img class="intLink" title="Underline" onclick="formatDoc('und
>erline');" src="data:image/gif;base64,R0lGODlhFgAWAKECAAAAAF9vj// 
>//////yH5BAEAAAIALAAAAAAWABYAAAIrlI+py+0Po5zUgAsEzvEeL4Ea15EiJJ5P 
>SqJmuwKBEKgxVuXWtun+DwxCCgA7" /&gt; 
665&lt;img class="intLink" title="Left align" onclick="formatDoc('ju
>stifyleft');" src="data:image/gif;base64,R0lGODlhFgAWAID/AMDAwAAA 
>ACH5BAEAAAAALAAAAAAWABYAQAIghI+py+0Po5y02ouz3jL4D4JMGELkGYxo+qzl4 
>nKyXAAAOw==" /&gt; 
666&lt;img class="intLink" title="Center align" onclick="formatDoc('
>justifycenter');" src="data:image/gif;base64,R0lGODlhFgAWAID/AMDA 
>wAAAACH5BAEAAAAALAAAAAAWABYAQAIfhI+py+0Po5y02ouz3jL4D4JOGI7kaZ5Bq 
>n4sycVbAQA7" /&gt; 
667&lt;img class="intLink" title="Right align" onclick="formatDoc('j
>ustifyright');" src="data:image/gif;base64,R0lGODlhFgAWAID/AMDAwA 
>AAACH5BAEAAAAALAAAAAAWABYAQAIghI+py+0Po5y02ouz3jL4D4JQGDLkGYxouqz 
>l43JyVgAAOw==" /&gt; 
668&lt;img class="intLink" title="Numbered list" onclick="formatDoc(
>'insertorderedlist');" src="data:image/gif;base64,R0lGODlhFgAWAMI 
>GAAAAADljwliE35GjuaezxtHa7P///////yH5BAEAAAcALAAAAAAWABYAAAM2eLrc 
>/jDKSespwjoRFvggCBUBoTFBeq6QIAysQnRHaEOzyaZ07Lu9lUBnC0UGQU1K52s6n 
>5oEADs=" /&gt; 
669&lt;img class="intLink" title="Dotted list" onclick="formatDoc('i
>nsertunorderedlist');" src="data:image/gif;base64,R0lGODlhFgAWAMI 
>GAAAAAB1ChF9vj1iE33mOrqezxv///////yH5BAEAAAcALAAAAAAWABYAAAMyeLrc 
>/jDKSesppNhGRlBAKIZRERBbqm6YtnbfMY7lud64UwiuKnigGQliQuWOyKQykgAAO 
>w==" /&gt; 
670&lt;img class="intLink" title="Quote" onclick="formatDoc('formatb
>lock','blockquote');" src="data:image/gif;base64,R0lGODlhFgAWAIQX 
>AC1NqjFRjkBgmT9nqUJnsk9xrFJ7u2R9qmKBt1iGzHmOrm6Sz4OXw3Odz4Cl2ZSnw 
>6KxyqO306K63bG70bTB0rDI3bvI4P///////////////////////////////////y 
>H5BAEKAB8ALAAAAAAWABYAAAVP4CeOZGmeaKqubEs2CekkErvEI1zZuOgYFlakECE 
>ZFi0GgTGKEBATFmJAVXweVOoKEQgABB9IQDCmrLpjETrQQlhHjINrTq/b7/i8fp8P 
>AQA7" /&gt; 
671&lt;img class="intLink" title="Add indentation" onclick="formatDo
>c('outdent');" src="data:image/gif;base64,R0lGODlhFgAWAMIHAAAAADl 
>jwliE35GjuaezxtDV3NHa7P///yH5BAEAAAcALAAAAAAWABYAAAM2eLrc/jDKCQG9 
>F2i7u8agQgyK1z2EIBil+TWqEMxhMczsYVJ3e4ahk+sFnAgtxSQDqWw6n5cEADs=" 
> /&gt; 
672&lt;img class="intLink" title="Delete indentation" onclick="forma
>tDoc('indent');" src="data:image/gif;base64,R0lGODlhFgAWAOMIAAAAA 
>Dljwl9vj1iE35GjuaezxtDV3NHa7P///////////////////////////////yH5BA 
>EAAAgALAAAAAAWABYAAAQ7EMlJq704650B/x8gemMpgugwHJNZXodKsO5oqUOgo5K 
>hBwWESyMQsCRDHu9VOyk5TM9zSpFSr9gsJwIAOw==" /&gt; 
673&lt;img class="intLink" title="Hyperlink" onclick="var sLnk=promp
>t('Write the URL here','http:\/\/');if(sLnk&amp;&amp;sLnk!=''&amp 
>;&amp;sLnk!='http://'){formatDoc('createlink',sLnk)}" src="data:i 
>mage/gif;base64,R0lGODlhFgAWAOMKAB1ChDRLY19vj3mOrpGjuaezxrCztb/I1 
>9Ha7Pv8/f///////////////////////yH5BAEKAA8ALAAAAAAWABYAAARY8MlJq7 
>046827/2BYIQVhHg9pEgVGIklyDEUBy/RlE4FQF4dCj2AQXAiJQDCWQCAEBwIioEM 
>QBgSAFhDAGghGi9XgHAhMNoSZgJkJei33UESv2+/4vD4TAQA7" /&gt; 
674&lt;img class="intLink" title="Cut" onclick="formatDoc('cut');" s
>rc="data:image/gif;base64,R0lGODlhFgAWAIQSAB1ChBFNsRJTySJYwjljwkx 
>wl19vj1dusYODhl6MnHmOrpqbmpGjuaezxrCztcDCxL/I18rL1P////////////// 
>/////////////////////////////////////////yH5BAEAAB8ALAAAAAAWABYAA 
>AVu4CeOZGmeaKqubDs6TNnEbGNApNG0kbGMi5trwcA9GArXh+FAfBAw5UexUDAQES 
>kRsfhJPwaH4YsEGAAJGisRGAQY7UCC9ZAXBB+74LGCRxIEHwAHdWooDgGJcwpxDis 
>QBQRjIgkDCVlfmZqbmiEAOw==" /&gt; 
675&lt;img class="intLink" title="Copy" onclick="formatDoc('copy');"
> src="data:image/gif;base64,R0lGODlhFgAWAIQcAB1ChBFNsTRLYyJYwjljw 
>l9vj1iE31iGzF6MnHWX9HOdz5GjuYCl2YKl8ZOt4qezxqK63aK/9KPD+7DI3b/I17 
>LM/MrL1MLY9NHa7OPs++bx/Pv8/f///////////////yH5BAEAAB8ALAAAAAAWABY 
>AAAWG4CeOZGmeaKqubOum1SQ/kPVOW749BeVSus2CgrCxHptLBbOQxCSNCCaF1GUq 
>wQbBd0JGJAyGJJiobE+LnCaDcXAaEoxhQACgNw0FQx9kP+wmaRgYFBQNeAoGihCAJ 
>QsCkJAKOhgXEw8BLQYciooHf5o7EA+kC40qBKkAAAGrpy+wsbKzIiEAOw==" /&gt 
>; 
676&lt;img class="intLink" title="Paste" onclick="formatDoc('paste')
>;" src="data:image/gif;base64,R0lGODlhFgAWAIQUAD04KTRLY2tXQF9vj41 
>4WZWIbXmOrpqbmpGjudClFaezxsa0cb/I1+3YitHa7PrkIPHvbuPs+/fvrvv8/f// 
>/////////////////////////////////////////////yH5BAEAAB8ALAAAAAAWA 
>BYAAAWN4CeOZGmeaKqubGsusPvBSyFJjVDs6nJLB0khR4AkBCmfsCGBQAoCwjF5gw 
>quVykSFbwZE+AwIBV0GhFog2EwIDchjwRiQo9E2Fx4XD5R+B0DDAEnBXBhBhN2Dgw 
>DAQFjJYVhCQYRfgoIDGiQJAWTCQMRiwwMfgicnVcAAAMOaK+bLAOrtLUyt7i5uiUh 
>ADs=" /&gt; 
677&lt;/div&gt;
678&lt;div id="textBox" contenteditable="true"&gt;&lt;p&gt;Lorem ips
>um&lt;/p&gt;&lt;/div&gt; 
679&lt;p id="editMode"&gt;&lt;input type="checkbox" name="switchMode
>" id="switchBox" onchange="setDocMode(this.checked);" /&gt; &lt;l 
>abel for="switchBox"&gt;Show HTML&lt;/label&gt;&lt;/p&gt; 
680&lt;p&gt;&lt;input type="submit" value="Send" /&gt;&lt;/p&gt;
681&lt;/form&gt;
682&lt;/body&gt;
683&lt;/html&gt;
684</pre>
685    </div>
686    <div class="note">
687      <strong>Note:</strong> if you want to see how to standardiz
>e the creation and the insertion of your editor in your page, ple 
>ase see our <a class="internal" href="/@api/deki/files/6243/=rich 
>-text-editor.zip" title="rich-text-editor.zip">more complete rich 
>-text editor example</a>. 
688    </div>
689    <h3 id="Resources">
690      Resources
691    </h3>45    </p>
692    <ul>46    <p>
693      <li>47      <span style="line-height: 1.3em;">Konsultan, Deni di lokasi
 > proyek mengatakan, “saya dari pihak kontraktor, hanya menemani c
 >aker (cara kerja), dan membantu mengecek bahan material dan mengh
 >itung batu, memoto mobil pengirim material, lalu hasilnya dilapor
 >kan tertulis ke konsultan atasan saya dari PT. Jasakon pimpinan E
 >di, beralamat di Jalan Antapani, Bandung, kebetulan surat pelapor
 >an sudah dibawa teman saya, Akbar ke Bandung dan pengerjaan proye
 >k TPA ini seluas 4 hektar, akan diberi hamparan geo membrane dan 
 >pemasangan pipa HDP bahan besi, dilengkapi TPT batu bronjong per 
 >satu kubik batu, panjang sekira 180 meter dan tinggi 5 hingga 7 m
 >eter, serta dilengkapi pemasangan geo tekswopen, papan proyek sud
 >ah dipasang, tapi rusak kena angin, gambarnya juga rusak, proyek 
 >ini dikerjakan oleh PT. Nugraha Adi Taruna Jakarta.” paparnya.</s
 >pan>
694        <a class="external" href="http://mozilla.org/editor/midas
>-spec.html">mozilla.org's rich-text editing Specification</a> 
695      </li>
696      <li>
697        <a class="external" href="http://mozilla.org/editor/midas
>demo/">mozilla.org's rich-text editing Demo</a> 
698      </li>
699      <li>
700        <a class="external" href="http://www.mozilla.org/editor/i
>e2midas.html">Converting an app using document.designMode from IE 
> to Mozilla at mozilla.org</a> 
701      </li>
702      <li>{{ MSDN("ms533720", "designMode Property") }}
703      </li>
704      <li>{{ MSDN("ms537834", "How to Create an HTML Editor Appli
>cation") }} 
705      </li>
706      <li>
707        <a class="external" href="http://www.kevinroth.com/rte/de
>mo.htm">A closed source, cross-browser rich-text editing demo</a> 
708      </li>
709      <li>
710        <a href="/en/Rich-Text_Editing_in_Mozilla/Class_xbDesignM
>ode" title="en/Rich-Text_Editing_in_Mozilla/Class_xbDesignMode">x 
>bDesignMode; a JavaScript helper class for easier cross-browser d 
>evelopment using designMode.</a> 
711      </li>
712      <li>
713        <a class="external" href="http://starkravingfinkle.org/bl
>og/2007/07/firefox-3-contenteditable/">Firefox 3 and contentEdita 
>ble</a> 
714      </li>
715    </ul>48    </p>
716    <div class="originaldocinfo">49    <p>
717      <h3 id="Original_Document_Information">50      <span style="line-height: 1.3em;">Sementara itu, menurut Pe
 >laksana Proyek TPA, Dedy mengatakan, bahwa di TPA itu harus diban
 >gun sejumlah kolam, guna proses pengolahan lindi sampah, yang aka
 >n disalurkan ke saluran sungai permukiman masyarakat, menurut uji
 > kelayakan, lindi yang akan dialirkan ke sungai, harus diuji deng
 >an cara memasukan ikan ke kolam tersebut, jika ikan itu tidak mat
 >i, maka lindi tersebut sudah layak dialirkan, tuturnya.</span> <e
 >m style="line-height: 1.3em;"><strong>Hendra</strong></em>
718        Original Document Information
719      </h3>
720      <ul>
721        <li>Author(s): Doron Rosenberg, Netscape Communications
722        </li>
723        <li>Published: 04 Apr 2003
724        </li>
725        <li>Revised: 01 Jul 2003
726        </li>
727        <li>Revised: 24 Apr 2005, <a href="/User:Fumble" title="U
>ser:Fumble">Joel Coreson</a> 
728        </li>
729        <li>Revised: 28 Nov 2006, <a class="link-mailto" href="ma
>ilto:kkuhns@ComputronicsUSA.com">Ken Kuhns</a>, <a class="externa 
>l" href="http://www.ComputronicsUSA.com">ComputronicsUSA</a> 
730        </li>
731        <li>Revised: 19 Dec 2007, <a href="/User:MarkFinkle" titl
>e="User:MarkFinkle">Mark Finkle</a> 
732        </li>
733      </ul>
734    </div>51    </p>
735    <div>
736      {{ languages( { "zh-cn": "Cn/Rich-Text_Editing_in_Mozilla",
> "en": "en/Rich-Text_Editing_in_Mozilla", "ja": "ja/Rich-Text_Edi 
>ting_in_Mozilla", "it": "it/Rich-Text_Editing_in_Mozilla"} ) }} 
737    </div>

Back to History