странное поведение функции с именем search
По непонятным причинам функция с именем search дает ошибку в случае, когда назначена на событие click именно у ссылок:
Uncaught TypeError: string is not a function Т.е. воспринимается браузером как строка. Вот пример кода:
<html>
<head>
<script>
function search()
{
alert('test');
}
</script>
</head>
<body>
<div onclick="search()">click here</div>
<a href="javascript:void(0)" onclick="search()">or here</a>
</body>
</html>
Такое поведение воспроизвелось в chrome, ff, ie. В списке резервных имен search не значится. |
Таки измени имя функции, всего делов-то... :)
Цитата:
|
Изменить имя не проблема. Интересна причина.
Оперу забыла упомянуть, в ней тоже проверяла. |
хм..
реально странно, потому что так работает
<!DOCTYPE HTML>
<html>
<head> </head>
<body>
<div onclick="search_();">click here</div>
<a href="#" >or here</a>
<script>
var a = document.getElementsByTagName("a")[0];
a.onclick = search;
function search () {
alert('ok');
return false;
}
</script>
</body>
</html>
возможно какой то старый баг, движка.. |
Лол. Очевидно же:
<a href="http://ya.ru?123" onclick="alert(search);return false">or here</a> Код прописанный в онклик выполняется в контексте this, this в данном случае - URI, а URI.search - часть URI содержащая передаваемые параметры. |
| Часовой пояс GMT +3, время: 16:36. |