Передача параметра из одной ф-ии в другую

Статус
Закрыто для дальнейших ответов.

snowlander

Member
Регистрация
29.07.2008
Сообщения
10
Имеется два готовых скрипта, каждый из которых работает отлично. А именно, первый: ищет все id элементов на странице и заносит их в массив, по onclick выводит id активного (в фокусе) элемента. А второй: вставляет заданный текст по onclick в текстовую область, имеющую собственный id. Задача: вставить текст в активную текстовую область (находящуюся в фокусе в данный момент).
Первый скрипт:
Код:
<script language="JavaScript"><!--
	 window.onload = init;
	 function init () {
	   document.activeElement = document.body;
	   var all = document.body.getElementsByTagName('*');
	   for (var i = 0; i < all.length; i++) {
		 var functionBody = 'document.activeElement = this;';
		 var oldOnFocus = all[i].getAttribute('onfocus');
		 if (oldOnFocus)
		   functionBody += oldOnFocus;
		 all[i].onfocus = new Function ('event', functionBody);
	   }
	 }
	 // --></script>
	 ...
	 <textarea id="textareaID1" name="textarea1" rows=5 cols=40 onclick="alert(document.activeElement.id)"></textarea> 
	 <textarea id="textareaID2" name="textarea2" rows=3 cols=40 onclick="alert(document.activeElement.id)"></textarea> 
	 <textarea id="textareaID3" name="textarea3" rows=3 cols=20 onclick="alert(document.activeElement.id)"></textarea> 
	 <input type="button" id="buttonID1" value="1" onclick="alert(document.activeElement.id)">
Например, по нажатию на элемент скрипт выводит сообщение с id активного элемента, т.е. находящегося в фокусе.

Второй скрипт:
Код:
	 <script language="JavaScript"><!--
	 name="textareaID";
	   cursor = 0;
	 
	 function obj() { 
			  str = document.getElementById(name); 
	 }
	 function position()
	 {
	  if (!document.selection) { cursor = str.selectionStart; }
	 }
	 
	 function InsertText(text)
	 {
		 if(navigator.userAgent.indexOf('Opera')==-1) { str.focus(); }
		 if (document.selection) { document.selection.createRange().text = ' ' + text + ' '; }
		 else
		 {
			 var strFirst = str.value.substr(0, cursor);
			 var strEnd   = str.value.substr(cursor, str.value.length);
			 if(strFirst=='') { var raz1 = ' '; var raz2 = ' '; var num = 1; }
			 else
			 {
			 var raz1 = '';  var raz2 = ''; var num = 0;
			 if (!/^.*(\s{1,})$/.test(strFirst)) { raz1 = " "; num++; }
			 if (!/^(\s{1,}).*$/.test(strEnd)) { raz2 = " "; num++; }
			 }
			 str.value = strFirst + raz1 + text + raz2 + strEnd;
			 cursor = strFirst.length + text.length + num;
			 str.selectionStart = str.selectionEnd = cursor;
		 }
	 }
	 // --></script>
	 ...
	 <textarea id="textareaID" name="textarea1" rows=5 cols=40></textarea> <input type="button" value="4" onclick='position();InsertText("UserText")'>
	 ...
	 <script language="JavaScript" type="text/javascript">
	 <!--
	 obj();
	 // -->
	 </script>
Например, скрипт вписывает в текстовую область текст UserText.

Как объединить эти два скрипта, чтобы можно было по onclick вписывать пользовательский текст в активную текстовую область, находящуюся в фокусе в данный момент?
 
Статус
Закрыто для дальнейших ответов.
Верх Низ