Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Несколько функций на одно событие. (https://javascript.ru/forum/events/12552-neskolko-funkcijj-na-odno-sobytie.html)

abstract 22.10.2010 15:55

Несколько функций на одно событие.
 
Собственно вопрос я так понимаю совсем смешной, однако люди добрые подскажите пожалуйста как повесить на событие onLoad вызов сразу нескольких функций?
Сейчас так:
onLoad="loadTable('table_2')"

а нужно ещё loadTable('table_1');

Kolyaj 22.10.2010 16:22

http://javascript.ru/tutorial/events...deventlistener

abstract 22.10.2010 16:47

А попроще решения нет? Ну что-то типа вызов из тела функции init?
function init(){
loadTable('table_1');
loadTable('table_2');
}

Просто в этой части на странице никакой динамики не предвидится.

Kolyaj 22.10.2010 17:06

Что сложного в вызове функции addEventListener/attachEvent?

vladlen 24.10.2010 01:10

Проще и доступнее чем там написано нет! Криворучее, не желание что-то изучать - фреймворки.

abstract 25.10.2010 08:35

Объясните пожалуйста почему это не работает:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" charset="UTF-8" src="rubber_table_dom.js"></script>
<script type="text/javascript" charset="UTF-8" src="ajax.js"></script>
<script type="text/javascript" charset="UTF-8" src="onLoad.js"></script>
<title>Отработка резиновой таблицы</title>
</head>
<body onLoad="init()">

<center>
<span id='firm'>
<b>Эту запись должна заменить таблица. Значит какой-то косячок!!</b>
</span>
<br>
11111111111111111;
<br>
<span id='table_2'>
<b>Эту запись должна заменить таблица. Значит какой-то косячок!!</b>
</span>
</center>

</body>
</html>

function addEvent(elem, type, handler){
	  if (elem.addEventListener){
	    elem.addEventListener(type, handler, false)
	  } else {
	    elem.attachEvent("on"+type, handler);
	  }
	} 
function init(){
	addEvent('body','load',loadTable('firm'));
	addEvent('body','load',loadTable('table_2'));
	};

Значит первый момент: "Break on ErrorКопировать
elem.attachEvent is not a function" - firefox.
Второй момент: Первая таблица отображается, вторая уже нет.

Kolyaj 25.10.2010 08:44

А почему body в кавычках?

abstract 25.10.2010 15:31

а без кавычек не работает

Kolyaj 25.10.2010 15:57

А с кавычками работает? :)

document.body

abstract 25.10.2010 16:11

Да, первая таблица грузится. Ровно также ведет себя такая запись:
function addEvent(elem, type, handler){
	  if (elem.addEventListener){
	    elem.addEventListener(type, handler, false)
	  } else {
	    elem.attachEvent("on"+type, handler);
	  }
	} 
function init(){
	addEvent(document.body,'load',loadTable('table_2'));
	addEvent(document.body,'load',loadTable('firm'));
	
	};


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