Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.10.2012, 11:57
Новичок на форуме
Отправить личное сообщение для veryberry Посмотреть профиль Найти все сообщения от veryberry
 
Регистрация: 01.10.2012
Сообщений: 2

странное поведение функции с именем 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 не значится.
Ответить с цитированием
  #2 (permalink)  
Старый 01.10.2012, 15:38
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

Таки измени имя функции, всего делов-то...

Сообщение от veryberry
Такое поведение воспроизвелось в chrome, ff, ie.
У меня и в Опере не работает...
Ответить с цитированием
  #3 (permalink)  
Старый 01.10.2012, 16:25
Новичок на форуме
Отправить личное сообщение для veryberry Посмотреть профиль Найти все сообщения от veryberry
 
Регистрация: 01.10.2012
Сообщений: 2

Изменить имя не проблема. Интересна причина.
Оперу забыла упомянуть, в ней тоже проверяла.
Ответить с цитированием
  #4 (permalink)  
Старый 01.10.2012, 17:28
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

хм..
реально странно, потому что так работает
<!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>

возможно какой то старый баг, движка..
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #5 (permalink)  
Старый 01.10.2012, 17:42
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,586

Лол. Очевидно же:
<a href="http://ya.ru?123" onclick="alert(search);return false">or here</a>

Код прописанный в онклик выполняется в контексте this, this в данном случае - URI, а URI.search - часть URI содержащая передаваемые параметры.
__________________
29375, 35

Последний раз редактировалось Aetae, 01.10.2012 в 17:44.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Странное поведение... popov654 Общие вопросы Javascript 6 29.03.2011 05:14
Странное поведение переменной mycoding Серверные языки и технологии 4 14.01.2011 19:18
странное поведение innerhtml alexsum Общие вопросы Javascript 6 24.09.2010 16:17
DragAndDrop у гридов в плавающих окнах странное поведение PavelK ExtJS 0 29.07.2010 15:26
Странное поведение replace cooli0 Общие вопросы Javascript 4 25.01.2010 17:16