Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   Мои ламерские вопросы про Javascript. Заходите! (http://forum.oszone.net/showthread.php?t=74462)

Newb 12-11-2006 16:38 510498

Мои ламерские вопросы про Javascript. Заходите!
 
Работает:
Код:

<html>
<head> <title> title </title> </head>
<body>
<script> function f() { alert('я крут'); } </script>
<h1 onclick='f()'> text </h1>
</body>
</html>

Не работает:
Код:

<html>
<head> <title> title </title> </head>
<body>
<h1 onclick='alert('без точки с запятой тоже не работает');'> text </h1>
</body>
</html>

Тоже не работает:
Код:

<html>
<head> <title> title </title> </head>
<body>
<script> function f.onclick() { alert('я крут'); } </script>
<h1 id='f'> если писать id='f()', то тоже не работает </h1>
</body>
</html>

В моей книжке написано, что второй и третий варианты тоже должны работать.

У меня Op_9.02 и IE_7.

vadimiron 12-11-2006 17:15 510509

А если так?
HTML код:

<h1 onclick="alert('без точки с запятой тоже не работает');"> text </h1>

Newb 12-11-2006 18:16 510527

Второе с двойными кавычками заработало, спасибо, а третье по-прежнему нет.

mar 12-11-2006 19:36 510549

Newb
в 3 случае просто неправильный код. Вы сразу в определение функции вставили ее вызов. Определение и вызов должны жить в разных местах, как это и сделано в первом варианте.
Имеем:
PHP код:

<script
    function 
f() { 
        
alert('я крут'); 
    } 
</script> 

дальше создаем объект, поддерживающий метод onClick (т.е. что-то по щелчку) и по onClick вызываем функцию:
PHP код:

<h1 onclick="f();"text </h1


Newb 12-11-2006 20:28 510588

mar

Нет, в книге написан именно такой способ и потом еще ни один пример с ним встречается.

mar 12-11-2006 20:34 510590

в книжках встречаются опечатки, или там вообще что-то другое, тогда надо смотреть контекст.
Я попыталась объяснить логику объявления и вызова функций - попробуй соотнести это с третьим примером (таким, каким ты его дал тут)


Время: 22:48.

Время: 22:48.
© OSzone.net 2001-