Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   удалить лишний символ в блоке текста (https://javascript.ru/forum/dom-window/9662-udalit-lishnijj-simvol-v-bloke-teksta.html)

lammeR 30.05.2010 19:58

удалить лишний символ в блоке текста
 
Привет!!
Есть скрипт:
function symbolsFind()
{
    var elements=null,symbol="";
    var searches=document.getElementById('searchText').innerHTML;
	var string=prompt("Найти символ","");
	  	
	  elements=searches.split(string);
for(var i=0;i<elements.length;i++)
{
      
	  symbol+=elements[i];
	  symbol+="<span style='color:red;'>"+string+"</span>";
	  document.getElementById('searchText').innerHTML=symbol;
}
}

<div id="searchText">Бабабабаба лолаллвавладлвд крарввалваавлаввавлдлвавалвалвалвалвдл.
</div>
<a href="#" onclick="symbolsFind();" style="font-family:Verdana, Arial, Helvetica, sans-serif; color:#0099FF;">Найти символ в тексте</a><br/>

Суть такова: в блоке текста искомый символ удаляем, затем этот же символ заворачиваем в тэг спан, ставим "стиль красный цвет" и возвращаем на место откуда удаляли. Всё работает, но есть маленькая проблема, как удалить последний лишний символ, который добавляется в конец блока текста?

Gvozd 30.05.2010 20:34

function symbolsFind()
	{
	var elements=null,symbol="";
	var searches=document.getElementById('searchText').innerHTML;
	var string=prompt("Найти символ","");

	elements=searches.split(string);
	console.log(elements);
	for(var i=0;i<elements.length-1;i++)//идем до предпоследнего элемента массива
		{
		symbol+=elements[i];
		symbol+="<span style='color:red;'>"+string+"</span>";
		}
	symbol+=elements[i];//добавляем последний элемент
	document.getElementById('searchText').innerHTML=symbol;//пишем в страницу
	}

lammeR 30.05.2010 23:58

Gvozd,
спасибо, а что такое
console.log(elements);
??

Gvozd 31.05.2010 00:19

это можно удалить.
это я так, для себя вставил

но, раз вы не знаете что это, то прочитайте про отладку JS:
http://javascript.ru/tools/development/firebug

lammeR 31.05.2010 00:24

Gvozd,
ааа, понятно, спасибо)

B~Vladi 01.06.2010 10:18

Gvozd, бывало такое, что на продакшн выкладывали с console.log:D

e1f 01.06.2010 12:15

B~Vladi, а почему нет? Враппер + debug_level, и не страшно, что в продакшне. А если что-то ВНЕЗАПНО нужно посмотреть на продакшене, в консоли прописываем debug_level = warn, и получаем выдачу -- для ФФ в консоль, для !ФФ -- разные эмуляции.

B~Vladi 01.06.2010 13:27

Я к тому, что кроссбраузерного JS-логера не прикручивали, поэтому всё начинает падать, у кого нет файербага, ну или открытого "Средства разработки" от осла - то есть у всех:)

Да, нада наверно прикрутить такой...

Gvozd 01.06.2010 23:23

Цитата:

Сообщение от B~Vladi
Gvozd, бывало такое, что на продакшн выкладывали с console.log

догадываюсь.
сам частенько страдаю этим


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