Спасибо, сделал через targer, хотя на будущее надо бы добавить еще метод, который получит все элементы по тому же принципу, что и сейчас, но и в том числе даже если они еще не созданы на странице. Т.е. что-то навроде функции Live, т.ч. буду признателен каждому, кто добавить какой-нибудь дельной информации по данному вопросу.
|
Возник еще один вопрос, как удалить созданный элемент правильно.
Пишу так.
.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 Как правильно определить когда нужно этот элемент удалить? Надеюсь, поможете. |
ну он же вычисляет значения в условии, а id не всегда есть
|
Так а как бы это правильно записать. Если например нет id. Или еще лучше, если мышь выходит за пределы #idd
|
<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>
|
Спасибо, попробую
|
<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 ? |
sotik,
window.onload = fucntion () { document.getElementsByName("sost")[0].value = val; }
|
Спасибо.А я тем временем нашел еще одно решение:
//функция смены кнопки function press(f) { if(f.but.value == "Смотреть бой"){f.but.value = "Отменить просмотр";} } |
с кнопками можно делать:
• изменять надпись на кнопке; • указывать обработчик события, который будет выполняться при нажатии на кнопку; • выдавать кнопке определенный обработчик в зависимости от внешних условий. Интересует третий пункт. Если на кнопку было повешано onClick="press(this.form)", то как это можно изменить на onClick="Ring(this.form)" ? желательно с примением моей функции (//функция смены кнопки). |
| Часовой пояс GMT +3, время: 13:07. |