| 
 | 
	
	
	
	
	
		
	
		
		
		
			
			 
			
				01.02.2014, 22:54
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 17.10.2013 
					
					
					
						Сообщений: 17
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				Вставка в разные textarea
			 
			
		
		
		
		Всем доброго времени суток 
Вот не как не могу сообразить, есть textearea, есть функция вставки bb кода в текстовое поле все работает все нормально ) 
А если например работать с двумя textarea то как узнать какую из них юзает пользователь чтобы именно в нее вставлять bb код? 
Мне бы просто понять саму суть "логику" работы 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.02.2014, 23:22
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 23.06.2011 
					
					
					
						Сообщений: 1,165
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Gertasreg, 
 понять бы Вашу логику   
Вы ходите сделать одну панель кнопок bb-кодов для двух текстарей? Не стоит. Сделайте для каждой свою, чтоб не запутывать пользователя.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.02.2014, 23:36
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 17.10.2013 
					
					
					
						Сообщений: 17
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Ах точно я не совсем уточнил ) 
для каждой textarea свой блок ббкодов, вставляю после js 
 
if ($(".textarea").length) {
	$(".textarea").before(
		'<ul class="redactor_toolbar">' + 
			'<li><a href="javascript:;" data-id="b" class="redactor_bold"></a></li>' +
			'<li><a href="javascript:;" class="redactor_underlined"></a></li>' + 
			'<li><a href="javascript:;" class="redactor_italic"></a></li>' + 
			'<li><a href="javascript:;" class="redactor_image"></a></li>' + 
			'<li><a href="javascript:;" class="redactor_link"></a></li>' + 
			'<li><a href="javascript:;" class="redactor_video"></a></li>' + 
		'</ul>'
	);
}
Проблема в том что я не могу понять в какую textarea вставлят ббкод если их 2 или больше  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				02.02.2014, 01:32
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 17.10.2013 
					
					
					
						Сообщений: 17
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 помогите а 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				02.02.2014, 02:25
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 13.03.2013 
					
					
					
						Сообщений: 1,572
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
<style>
      div.testblock {
        width:200px;
        margin: 10px;
        float: left;
      }
      div.testblock>textarea {
        width:200px;
        height: 80px;
        clear:booth;
      }
    </style>
    <div class="testblock">
      <textarea></textarea>
      <input type="button" value="Insert text" />
    </div>
    <div class="testblock">
      <textarea></textarea>
      <input type="button" value="Insert text" />
    </div>
    <div class="testblock">
      <textarea></textarea>
      <input type="button" value="Insert text" />
    </div>
    <script>
      window.onload = function () {
        var inps = document.querySelectorAll("div.testblock>input"),
          len = inps.length;
        for (; inps[--len].setAttribute("onclick", "ins(this)"), len;);
        ins = function (el) {
          var par = el.parentNode || el.parentElement,
            tar = par.children[0];
          tar.innerHTML += "Yes ";
        }
      }
    </script>
должно подтолкнуть на нахождение решения    
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось Vlasenko Fedor, 02.02.2014 в 14:16.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				02.02.2014, 12:05
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 23.10.2010 
					
					
					
						Сообщений: 2,718
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от Gertasreg
			
		
	 | 
 
	| 
		Проблема в том что я не могу понять в какую textarea вставлят ббкод если их 2 или больше
	 | 
 
	
 
 В активный элемент и вставляйте. Вы догадались дать ему tabindex?  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				02.02.2014, 12:07
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 без статуса 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 25.05.2012 
					
					
					
						Сообщений: 8,219
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Gertasreg, 
 Отслеживать фокус на поле
 
<textarea id=1 onfocus="tst(this)"></textarea>
<textarea id=2  onfocus="tst(this)"></textarea>
<script>
function tst(area) {
alert(area.id)
}
</script>
 
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось Deff, 02.02.2014 в 12:12.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				02.02.2014, 13:26
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 17.10.2013 
					
					
					
						Сообщений: 17
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 kostyanet, 
 Deff, 
tabindex я  запретил переходы 
onfocus, а что если пользователь сразу нажмет на ббкод 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				02.02.2014, 14:49
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 без статуса 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 25.05.2012 
					
					
					
						Сообщений: 8,219
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от Gertasreg
			
		
	 | 
 
	| 
		 что если пользователь сразу нажмет на ббкод
	 | 
 
	
 
 Вы же сказали что к каждой форме приписан свой BB-код ? 
Отслеживайте клик  на обрамлении кнопок соответствуюшей линейке bb-кодов, определяя кликнутый селектор линейки или фокус техтареа - определяете приписку вставок
 
<script src="http://code.jquery.com/jquery-latest.js"></script>
<span class="wrp-area" style="сursor:pointer;float:left;text-align:center">Кнопки 1<br/><br/><textarea id=1></textarea></span><span class="wrp-area" style="сursor:pointer;float:left;text-align:center">Кнопки 2<br/><br/><textarea id=2></textarea></span>
<script>
$('.wrp-area,.wrp-area textarea').bind('focus click',function () {
  var id = $(this).find('textarea')[0].id;
  alert(id);
});
</script>
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				02.02.2014, 15:07
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 13.03.2013 
					
					
					
						Сообщений: 1,572
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Попытка №2    
<style>
      div.testblock {
        width:200px;
        margin: 10px;
        float: left;
      }
      div.testblock>textarea {
        width:200px;
        height: 80px;
        clear:booth;
      }
    </style>
    <div class="testblock">
      <textarea></textarea>
      <div id="panel">
        <input type="button" value="A" />
        <input type="button" value="B" />
        <input type="button" value="C" />
        <input type="button" value="D" />
        <input type="button" value="E" />
      </div>
    </div>
    <div class="testblock">
      <textarea></textarea>
    </div>
    <div class="testblock">
      <textarea></textarea>
    </div>
    <script>
      window.onload = function () {
        var inps = document.querySelectorAll("div.testblock"),
          len = inps.length;
        for (; inps[--len].setAttribute("onclick", "edit(this)"), len;);
      }
      edit = function (el) {
        el.appendChild(panel);
      }
      panel.onclick = function (e) {
        e = e || window.event;
        var el = e.target || e.srcElement;
        if (el.tagName != "INPUT") return;
        var par = this.parentNode || this.parentElement,
          tar = par.children[0];
        var myValue = el.value,
          myValueLen = myValue.length;
        if (document.selection) {
          tar.focus();
          var sel = document.selection.createRange();
          sel.text = myValue;
          tar.focus();
        } else if (tar.selectionStart || tar.selectionStart == '0') {
          var startPos = tar.selectionStart,
            endPos = tar.selectionEnd,
            scrollTop = tar.scrollTop;
          tar.value = tar.value.substring(0, startPos) + myValue + tar.value.substring(endPos, tar.value.length);
          tar.focus();
          tar.selectionStart = startPos + myValueLen;
          tar.selectionEnd = startPos + myValueLen;
          tar.scrollTop = scrollTop;
        } else {
          tar.value += myValue;
          tar.focus();
        }
      }
    </script>
 
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось Vlasenko Fedor, 02.02.2014 в 19:22.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 
 
 
 
	 | 
 
 
 |