Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 03.10.2012, 01:46
Профессор
Отправить личное сообщение для platedz Посмотреть профиль Найти все сообщения от platedz
 
Регистрация: 15.08.2012
Сообщений: 285

Спасибо, сделал через targer, хотя на будущее надо бы добавить еще метод, который получит все элементы по тому же принципу, что и сейчас, но и в том числе даже если они еще не созданы на странице. Т.е. что-то навроде функции Live, т.ч. буду признателен каждому, кто добавить какой-нибудь дельной информации по данному вопросу.
Ответить с цитированием
  #22 (permalink)  
Старый 03.10.2012, 13:09
Профессор
Отправить личное сообщение для platedz Посмотреть профиль Найти все сообщения от platedz
 
Регистрация: 15.08.2012
Сообщений: 285

Возник еще один вопрос, как удалить созданный элемент правильно.

Пишу так.

.sob("mouseout",function(e)
     {
      	if(event.relatedTarget.id != "null" && event.relatedTarget.id != "undefined" &&    event.relatedTarget.id != "di" && event.relatedTarget.parentNode.id != "di" && document.getElementById("di")) {

	document.getElementById("di").parentNode.removeChild(document.getElementById("di"));
	
	}
		
	});


В общем и целом все работает, но отладчик выдает ошибки

Uncaught TypeError: Cannot read property 'id' of null

Как правильно определить когда нужно этот элемент удалить? Надеюсь, поможете.
Ответить с цитированием
  #23 (permalink)  
Старый 03.10.2012, 13:18
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

ну он же вычисляет значения в условии, а id не всегда есть
Ответить с цитированием
  #24 (permalink)  
Старый 03.10.2012, 13:38
Профессор
Отправить личное сообщение для platedz Посмотреть профиль Найти все сообщения от platedz
 
Регистрация: 15.08.2012
Сообщений: 285

Так а как бы это правильно записать. Если например нет id. Или еще лучше, если мышь выходит за пределы #idd
Ответить с цитированием
  #25 (permalink)  
Старый 03.10.2012, 14:01
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

<div style="background: gray">div</div>
<script>
document.body.children[0].onmouseover = function () {
	if (!document.getElementById('di')) {
		this.insertAdjacentHTML('afterBegin', '<button id="di">click</button>');
	} 
}
document.body.children[0].onmouseout = function (e) {
	e = e || event;
	var rt = e.relatedTarget || e.toElement;
	while(rt && rt != this) {
		rt = rt.parentNode;
	}
	if (rt == this ) {
		return;
	} else if (document.getElementById('di')) {
		this.removeChild(document.getElementById('di'));
	}
}
</script>
Ответить с цитированием
  #26 (permalink)  
Старый 03.10.2012, 14:16
Профессор
Отправить личное сообщение для platedz Посмотреть профиль Найти все сообщения от platedz
 
Регистрация: 15.08.2012
Сообщений: 285

Спасибо, попробую
Ответить с цитированием
  #27 (permalink)  
Старый 04.10.2012, 09:02
Профессор
Отправить личное сообщение для sotik Посмотреть профиль Найти все сообщения от sotik
 
Регистрация: 14.09.2012
Сообщений: 158

<js>
var val = "Смотреть бой";
</js>
<div id="block_id">
<form name="boy">
<input type="button" name="sost" value="" onclick="sostform(boy)" />
</form>
</div>
Можно ли как-нибудь переменную val вставить в value без использования innerHTML ?
Ответить с цитированием
  #28 (permalink)  
Старый 04.10.2012, 09:18
Аватар для lord2kim
Профессор
Отправить личное сообщение для lord2kim Посмотреть профиль Найти все сообщения от lord2kim
 
Регистрация: 03.05.2011
Сообщений: 848

sotik,
window.onload = fucntion () { document.getElementsByName("sost")[0].value = val; }
Ответить с цитированием
  #29 (permalink)  
Старый 04.10.2012, 09:37
Профессор
Отправить личное сообщение для sotik Посмотреть профиль Найти все сообщения от sotik
 
Регистрация: 14.09.2012
Сообщений: 158

Спасибо.А я тем временем нашел еще одно решение:
//функция смены кнопки
function press(f) {
if(f.but.value == "Смотреть бой"){f.but.value = "Отменить просмотр";}
}
Ответить с цитированием
  #30 (permalink)  
Старый 04.10.2012, 09:54
Профессор
Отправить личное сообщение для sotik Посмотреть профиль Найти все сообщения от sotik
 
Регистрация: 14.09.2012
Сообщений: 158

с кнопками можно делать:
• изменять надпись на кнопке;
• указывать обработчик события, который будет выполняться при нажатии на кнопку;
• выдавать кнопке определенный обработчик в зависимости от внешних условий.
Интересует третий пункт.
Если на кнопку было повешано onClick="press(this.form)",
то как это можно изменить на onClick="Ring(this.form)" ?
желательно с примением моей функции (//функция смены кнопки).
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обращение к элементам с неизвестным id gJam Events/DOM/Window 21 02.08.2012 17:26
JQuery После клонирования по id обращение к элементам клона mirek Общие вопросы Javascript 21 07.06.2012 20:02
как получить доступ к динамически созданным html элементам? korney Элементы интерфейса 8 21.01.2012 22:12
Обращение к элементам другого окна john1123 Events/DOM/Window 2 21.07.2011 18:06
Привязка событий к динамически созданным элементам htaccess Общие вопросы Javascript 5 10.05.2011 22:36