Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Объектная модель документа (https://javascript.ru/forum/events/27224-obektnaya-model-dokumenta.html)

Антон Дидковский 05.04.2012 23:11

Объектная модель документа
 
Ребята, помогите, пожалуйста, с лабой, с одногрупником разбирались, в условия даже не въехали о чем там речь. Вот условия задачи:

Создайте Web-страницу, в которой в абзаце, начальная подстрока которого имеет заданное содержимое, вставляется предложение перед предложением с заданным индексом. Ввод начальной подстроки абзаца, индекса предложения и содержимого нового предложения выполняется с помощью метода prompt.

T-sh 05.04.2012 23:54

вы опять просите уже готовую работу...

либо показывайте, что удалось сделать самим, а мы уже подскажем, либо пишите в раздел "работа", где за небольшую сумму вам это сделают.

Антон Дидковский 06.04.2012 00:08

Помогите, пожалуйста, хотя бы с условиями, а то не можем понять что от нас требуют...

Антон Дидковский 06.04.2012 00:11

Мы просто новички, лекцию читаем, ничего не понимаем. А завтра уже сдача лабораторных работ...

Антон Дидковский 06.04.2012 00:15

На изучения Javascript выделяется 2 месяца. Всё сжато и весьма не понятно.

T-sh 06.04.2012 00:15

1. получаете от пользователя строку текста для поиска абзаца (назовем её var findText)
2. получаете от пользователя число: перед каким предложением по счету вставлять новую строку (var point)
3. получаете от пользователя новую строку. (var newText)
4. получаете все элементы с тегом <p> на странице.
5. если в содержимом элемента <p> есть findText — то, вставляете перед нужной по счету точкой newText (если point = 1, то вставляете новый текст перед второй точкой, т.к. индексы начинаются с нуля)

Антон Дидковский 06.04.2012 00:17

Условие вообщем понятно. А вот как его правильно запрограммировать?!

T-sh 06.04.2012 00:48

<!DOCTYPE html>
<html>
<head>
<title>Test</title>
</head>
<body>
<p>Абзац 1. Второе предложение. Третье предложение. Четвертое.</p>
<p>Абзац 2. Второе предложение. Третье предложение. Четвертое.</p>
<p>Абзац 3. Второе предложение. Третье предложение. Четвертое.</p>

<script>
var findText = prompt('Введите искомый текст');
var point = prompt('Введите номер предложение, перед которым добавить строку');
point--;
var newText = prompt('Введите новую строку');

var elems = document.getElementsByTagName('p');
for(var i=0; i<elems.length; i++){

	    if(elems[i].innerHTML.indexOf(findText) + 1){
			   var arr = elems[i].innerHTML.split('.');
			   arr[point] = newText+arr[point];
			   elems[i].innerHTML = arr.join('.');
			 }
}
</script>
</body>
</html>


держите. и не надо по 10 раз создавать темы с одной и той же просьбой.

Николай Гончар 06.04.2012 00:50

Спасибо большое!!! Вы очень меня выручили!


Часовой пояс GMT +3, время: 13:53.