<html>
<head>
<title>Демонстрационная версия</title>
</head>
<body>
<form method="post" action="">
<script language="JavaScript">
document.write('<PRE><B>Помощь: </B>')
helpon = false // ...true or false
document.write(
'<input type="radio" name="radiohelp" value="true" onClick = " helpon = true"> Вкл. ')
document.write(
'<input type="radio" name="radiohelp" value="false" checked onClick = " helpon = false"> Выкл. <BR>')
document.write('<B>ввод HTML: </B>')
modeindex = 0 // ...0=simple, 1=sample, 2=prompt
document.write(
'<input type="radio" name="radiomode" value="Copyright 1996 Ray Daly" checked onClick = " modeindex = 0 "> Простой ')
document.write(
'<input type="radio" name="radiomode" value="Copyright 1996 Ray Daly" onClick = " modeindex = 1"> С примером ')
document.write(
'<input type="radio" name="radiomode" value="Copyright 1996 Ray Daly" onClick = " modeindex = 2"> С подсказкой <BR></PRE>')
document.write('<TABLE CELLSPACING="0" BORDER="0">')
document.write(
'<TR><TH><input type="button" value=" Start " onClick="HjButton(this.form,jStart)">')
document.write('<input type="button" value=" End " onClick="HjButton(this.form,jEnd)">')
document.write(
'</TH><TH><input type="button" value=" Preview " onClick="preview(this.form)">')
document.write(
'</TH><TH><input type="button" value=" About " onClick="About(this.form)">')
document.write(
'</TH></TR><TR><TH><input type="button" value=" B " onClick="HjButton(this.form,jBold)">')
document.write('<input type="button" value=" I " onClick="HjButton(this.form,jItalics)">')
document.write('<input type="button" value=" PRE " onClick="HjButton(this.form,jPre)"> ')
document.write('</TH><TH><input type="button" value=" H1 " onClick="HjButton(this.form,jH1)">')
document.write('<input type="button" value=" H2 " onClick="HjButton(this.form,jH2)">')
document.write('<input type="button" value=" H3 " onClick="HjButton(this.form,jH3)"> ')
document.write('</TH><TH><input type="button" value=" OL " onClick="HjButton(this.form,jOL)">')
document.write('<input type="button" value=" UL " onClick="HjButton(this.form,jUL)">')
document.write('<input type="button" value=" LI " onClick="HjButton(this.form,jLI)"> ')
document.write('</TH><TH><input type="button" value=" DL " onClick="HjButton(this.form,jDL)">')
document.write('<input type="button" value=" DT " onClick="HjButton(this.form,jDT)">')
document.write('<input type="button" value=" DD " onClick="HjButton(this.form,jDD)"><BR>')
document.write(
'</TH></TR><TR><TH><input type="button" value=" P " onClick="HjButton(this.form,jPara)">')
document.write('<input type="button" value=" BR " onClick="HjButton(this.form,jBreak)">')
document.write('<input type="button" value=" HR " onClick="HjButton(this.form,jRule)"> ')
document.write(
'</TH><TH><input type="button" value=" Anchor " onClick="HjButton(this.form,jAnchor)"> ')
document.write(
'</TH><TH><input type="button" value=" L" onClick="HjButton(this.form,jImageL)">')
document.write('<input type="button" value=" Image " onClick="HjButton(this.form,jImage)">')
document.write('<input type="button" value="R" onClick="HjButton(this.form,jImageR)"> ')
document.write(
'</TH><TH><input type="button" value=" Center " onClick="HjButton(this.form,jCenter)"> ')
document.write('</TH></TR></TABLE>')
function HjReset(form) { // ...
helpon = false
modeindex = 0
form.TEXT.value = ""
}
function HTMLtag(buttonname, insertmode, inserttext, tagstart, tagmiddle, tagend, sampletext,
sampletext2, helptext) {
// ...this fuction defines the object HTMLtag
this.buttonname = buttonname
this.insertmode = insertmode
// ...1=none 2=standard input 3=lists (UL and OL) 4=DL list 5=anchor
this.inserttext = inserttext // ...с подсказкой
this.tagstart = tagstart
this.tagmiddle = tagmiddle
this.tagend = tagend
this.sampletext = sampletext // ...с примером между тегами
this.sampletext2 = sampletext2
this.helptext = helptext
}
jStart = new HTMLtag("Start", "2", "Введите название документа", " <HTML><HEAD><TITLE>", "",
"</TITLE></HEAD><BODY>",
"Введите название документа", "",
"Теги для создания начала документа. Для закрытия документа используйте кнопку END"
)
jEnd = new HTMLtag("End", "1", "", " </BODY></HTML>", "", "",
"", "",
"Эта вставка закрывает документ.")
jBold = new HTMLtag("B", "2", "Введите текст, который будет жирным", " <B>", "", "</B>",
"Этот текст будет жирным", "",
"Текст между <B> и </B> будет жирным")
jItalics = new HTMLtag("I", "2", "Введите наклонный шрифт", " <I>", "", "</I>",
"Этот текст будет наклонным", "",
"Текст между <I> и </I> будет наклонным")
jPre = new HTMLtag("PRE", "2", "Введите предворительно отформатированный текст", " <PRE>", "",
"</PRE>",
"Этот текст будет предворительно отформатированным", "",
"Текст между <PRE> и </PRE> будет предворительно отформатированным")
jPara = new HTMLtag("P", "2", "Введите текст для параграфа", " <P>", "", "</P>",
"Текст будет параграфом до следующего знака параграфа.", "",
"Текст от <P> и до следующего <P> будет параграфом")
jBreak = new HTMLtag("BR", "1", "", " <BR>", "", "",
"", "",
"Этот тег вставит разрыв строки")
jRule = new HTMLtag("HR", "1", "", " <HR>", "", "",
"", "",
"Этот тег вставит в страницу горизонтальную линию.")
jH1 = new HTMLtag("H1", "2", "Введите текст для заголовка", " <H1>", "", "</H1>",
"Это заголовок первого уровня", "",
"Текст между <H1> и </H1> будет заголовком первого уровня.")
jH2 = new HTMLtag("H2", "2", "Введите текст для заголовка", " <H2>", "", "</H2>",
"Это заголовок второго уровня", "",
"Текст между <H1> и </H1> будет заголовком второго уровня.")
jH3 = new HTMLtag("H3", "2", "Введите текст для заголовка", " <H3>", "", "</H3>",
"Это заголовок третьего уровня", "",
"Текст между <H1> и </H1> будет заголовком третьего уровня.")
jCenter = new HTMLtag("Center", "2", "Введите отцентрованный текст", " <CENTER>", "",
"</CENTER>",
"Этот текст будет отцентрован", "",
"Текст между <CENTER> и </CENTER> будет расположен по центру.")
jOL = new HTMLtag("OL", "3", "Введите данные для первого номера пронумерованного списка",
" <OL><LI> ", "</LI><LI> ", "</LI></OL>",
"Это 1 строка пронумерованного списка",
"Следующая строка пронумерованного списка",
"Создайте упорядоченный список помещая пункты между <LI> и </LI>")
jOL.inserttext2 = "Введите данные для следующей строки"
jUL = new HTMLtag("UL", "3", "Введите первый элемент для неупорядоченного списка", " <UL><LI> ",
"</LI><LI> ", "</LI></UL>",
"Это один элемент в простом списке", "Следующий элемент в простом списке",
"Создайте упорядоченный список помещая пункты между <LI> и </LI>")
jUL.inserttext2 = "Введите следующий элемент"
jLI = new HTMLtag("LI", "2", "Введите текст для списка", " <LI>", "", "</LI>",
"Этот элемент в списке", "",
"Текст, помещенный между <L1> и </L1> будет один (пункт) в СПИСКЕ. Требует OL или UL."
)
jDL = new HTMLtag("UL", "4", "Введите элемент для СПИСКА ОПРЕДЕЛЕНИЯ", " <DL><DT>",
"</DT> <DD>", " </DD></DL>",
"Элемент, который будет определен", "Определение элемента",
"СПИСКИ ОПРЕДЕЛЕНИЯ имеют два элемента: элемент и определение. Введите элемент."
)
jDL.inserttext2 = "Введите список "
jDL.tagmiddle2 = '</DD> <DT>'
jDT = new HTMLtag("DT", "2", "Введите элемент в список определений", " <DT>", "", "</DT>",
"Элемент для списка определений", "",
"Текст между <DT> и </DT> будет одним элементом списка. Необходимо DL.")
jDD = new HTMLtag("DD", "2", "Введите определение для СПИСКА ОПРЕДЕЛЕНИЯ", " <DD>", "", "</DD>",
"Это определение для СПИСКА ОПРЕДЕЛЕНИЯ", "",
"Текст между <DD> и </DD> будет элементом списка. необходимо DL.")
jImageL = new HTMLtag("Image", 2, "Введите адрес картинки", ' <IMG SRC="', "", '" ALIGN=LEFT>',
"Адрес картинки", "",
"Введите адрес картинки с выравнивание влево")
jImage = new HTMLtag("Image", 2, "Введите адрес картинки", ' <IMG SRC="', "", '">',
"Адрес картинки", "",
"Введите адрес картинки")
jImageR = new HTMLtag("Image", 2, "Введите адрес картинки", ' <IMG SRC="', "", '" ALIGN=RIGHT>',
"Адрес картинки", "",
"Введите адрес картинки с выравниванием вправо")
jAnchor = new HTMLtag("Anchor", 5, "Введите адрес (например, http://www.domen.ru)", ' <A HREF="',
'"> ', '</A>',
"http://www.domen.ru", "Здесь описание",
"Введите URL (например, http://www.domen.ru/index.html) c описанием.")
jAnchor.inserttext2 = "Введите описание, например, Scriptsnetwork"
function About(form) {
alert('HTMLjive')
}
function HjButton(form, selection) { //
if (helpon) {
if (confirm(selection.helptext)) {
addHTML(form, selection)
}
} else {
addHTML(form, selection)
}
}
function addHTML(form, selection) {
// ...
cancel = false
addText = selection.tagstart
if (modeindex == 2) { // ...
if (selection.insertmode != 1) { // ...
addText += addHTMLinsert(selection, addText, form)
if (addText == selection.tagstart) {
cancel = true
}
}
}
if (modeindex == 1) { // ...
addText = addText + selection.sampletext + selection.tagmiddle + selection
.sampletext2
}
if (modeindex == 0) { // ...
addText += selection.tagmiddle
}
addText += selection.tagend
if (cancel == false) { // ...
form.TEXT.value += addText
}
}
function addHTMLinsert(selection, addText, form) {
if (selection.insertmode == 2) {
i = ""
i = prompt(selection.inserttext, "")
if ((i != null) && (i != "")) {
addText = i
} else {
addText = ""
}
}
if (selection.insertmode == 3) {
addText = ""
i = ""
i = prompt(selection.inserttext, "")
if ((i != null) && (i != "")) {
addText = i
while ((i != null) && (i != "")) {
i = prompt(selection.inserttext2, "")
if ((i != null) && (i != "")) {
addText = addText + selection.tagmiddle + i
}
}
}
}
if (selection.insertmode == 4) {
i = "dummy"
j = i
addText = ""
count = 0
while ((i != null) && (i != "") && (j != null) && (j != "")) {
++count
i = ""
i = prompt(selection.inserttext, "")
// ... used for debugging form.TEXT.value += "-->" + i + "<--"
if ((i != null) && (i != "")) {
j = ""
j = prompt(selection.inserttext2, "")
if ((j != null) && (j != "")) {
if (count > 1) {
addText += selection.tagmiddle2
}
addText = addText + i + selection.tagmiddle + j
}
}
}
}
if (selection.insertmode == 5) { // ...Anchor
addText = ""
i = ""
i = prompt(selection.inserttext, "")
if ((i != null) && (i != "")) {
j = ""
j = prompt(selection.inserttext2, "")
if ((j != null) && (j != "")) {
addText = i + selection.tagmiddle + j
}
}
}
return addText
}
function preview(form) {
msg = open("", "DisplayWindow", "toolbar=no,directories=no,menubar=yes");
msg.document.write(form.TEXT.value);
}
</script>
<b>Документ:</b><br>
<TEXTAREA NAME="TEXT" ROWS="16" COLS="60" WRAP="VIRTUAL"></TEXTAREA>
<INPUT TYPE="reset" VALUE="Очистить и запустить заново" onClick="HjReset(this.form)">
</form>
</body>
</html>
Скачать пример