Показать сообщение отдельно
  #1 (permalink)  
Старый 15.03.2017, 23:49
Ela Ela вне форума
Новичок на форуме
Отправить личное сообщение для Ela Посмотреть профиль Найти все сообщения от Ela
 
Регистрация: 15.03.2017
Сообщений: 1

использование нескольких кнопок
В моём редакторе есть несколько кнопок и я никак не могу сделать так чтобы можно было использовать несколько для одной фразы но для разных символов, перепробовала несколько вариантов, не помогло. К каждой кнопки привязывается функция, в которой вызывается функция представления текста после нажатия, есть также функция сдвига отформатированного текста при вводе символов перед ним, функция слияния отформатированного несколько раз текста. Помогите пожалуйста. Код скину без проблем. Оставлю адрес lenka2023@mail.ru
function makeBoldStringHtml(sourceStr){
		   textarea=document.getElementById("text");
		    expressionText =( document.getElementById("text").value ); 
			 document.getElementById("text").innerHTML = expressionText.replace(/\n/g, '<br>');
        alert(" makeBoldStringHtml");
	 var currentSymbolIndex = 0;
			var resultStr =" ";
            var usedSymbols = 0;
			for (var j = 0; j < sourceStr.length; j++){
            for (var i = 0; i < boldIndexes.length; i++){
				if(i==j){
					
                if (currentSymbolIndex<=boldIndexes[i].startPosition){
					resultStr += sourceStr.substring(currentSymbolIndex,boldIndexes[i].startPosition);
					resultStr = '<span>'+resultStr+'</span><span class="strong">'+sourceStr.substring(boldIndexes[i].startPosition,boldIndexes[i].startPosition+boldIndexes[i].size)+'</span><span>'+sourceStr.substring(boldIndexes[i].startPosition+boldIndexes[i].size,sourceStr.length)+'</span>';

																		}					
						}
			}
это функция представления
function Bold()
            {
             
             textarea=document.getElementById("text");
            document.getElementById("text").focus();
			expressionText =( document.getElementById("text").value ); 
             //expressionText =  document.getElementById("text").value;
            document.getElementById("text").innerHTML = expressionText.replace(/\n/g, '<br>');
                var selectionBegin = (textarea.selectionStart < textarea.selectionEnd) ? textarea.selectionStart : textarea.selectionEnd;
                var selectionEnd = (textarea.selectionEnd > textarea.selectionStart) ? textarea.selectionEnd : textarea.selectionStart;
                boldIndexes.push(new UsedSelection(selectionBegin,selectionEnd-selectionBegin));
                AggregateSelection(boldIndexes);
                for (var i = 0; i < boldIndexes.length; i++){
                    var beginIndex = boldIndexes[i].startPosition;
                    var endIndex = boldIndexes[i].endPosition;
															}
                boldIndexes.sort(function(a,b) {
                return a.startPosition - b.startPosition;
												});
                console.log('aggregated array:');
        for (var i =0; i < boldIndexes.length; i++){  
            console.log(boldIndexes[i].startPosition + " " + boldIndexes[i].size);
		           					}
			var BoldresultStr = makeBoldStringHtml(expressionText);
			document.getElementById("RESULTTEXT").innerText= BoldresultStr;
			document.getElementById("RESULTHTML").innerHTML= BoldresultStr;
           
               

			   Make();
			}
это функция кнопки
таких функций у меня много

Последний раз редактировалось Ela, 17.03.2017 в 16:59. Причина: редактирование кода
Ответить с цитированием