PDA

Просмотр полной версии : setTimeout и функции с параметрами


Илья К
12.02.2006, 22:55
Всем привет. Вопрос такой. Есть скрипт (http://flasher.ru/forum/showthread.php?t=75384&page=2), показывающий подсказку при наведении мышкой и скрывающий при ее отводе. Пытаюсь усовершенствовать, добавив таймаут. Проверяю алертом -- ошибка. Пишет, что "none" (это значение MY_element_prompt_style.display в этот момент) не определен. Проверяю без таймаут -- все работает... Всем тут может быть проблема?
function hide_prompt(MY_element_prompt)
{
MY_element_prompt_style = document.getElementById(MY_element_prompt).style;
MY_element_prompt_style.display = "none";
//alert(MY_element_prompt_style.display);
window.setTimeout("alert("+MY_element_prompt_style.display+")", 1000);
}

<div id="element_prompt">Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam...</div>
<a id="element_text" href="#" onmouseover="show_prompt('element_prompt')" onmouseout="hide_prompt('element_prompt')">Link</a>

Crazy
12.02.2006, 23:16
Есть такое умное слово: closure (замыкание):

<script>

function sayIt (message, delay) {
var func = function() {
alert(message);
}
window.setTimeout(func, delay);
}

sayIt('foo', 2000);
sayIt('bar', 1000);
</script>

Илья К
12.02.2006, 23:28
sayIt(foo, 2000);
sayIt(bar, 1000);

Спасибо!