Javascript.RU

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

cancelBubble родительского дива
Имеется:
<div id="father" onmousedown="f1(event); return false;">
<div id="son" onclick="f2(1)">text<div><div id="son" onclick="f2(2)">text<div><div id="son" onclick="f2(3)">text<div>
</div>

Функция "f1" использует onmousemove для скроллинга.
Требуется запретить "onclick" для элементов "son", если клик произошёл после выполнения этой функции, а не после клика на элементе. Что можно сделать?

Пробовал <body onclick="return false;"> тогда клик на элементах son не выполняется. Совсем запутался, буду благодарен за любую помощь в решении задачи, спасибо =)
Ответить с цитированием
  #2 (permalink)  
Старый 03.02.2012, 08:33
Лаборант
Отправить личное сообщение для Pavel M. Посмотреть профиль Найти все сообщения от Pavel M.
 
Регистрация: 08.11.2011
Сообщений: 612

почитайте для начала про ID элемента, он должен быть уникальный http://htmlbook.ru/html/attr/id
Ответить с цитированием
  #3 (permalink)  
Старый 03.02.2012, 08:37
Интересующийся
Отправить личное сообщение для platitude Посмотреть профиль Найти все сообщения от platitude
 
Регистрация: 27.01.2012
Сообщений: 11

в данном случае это не играет роли, проблема заключается в клике в области "father" и как следствие срабатывание дочерних событий
Ответить с цитированием
  #4 (permalink)  
Старый 03.02.2012, 09:15
Аватар для melky
4xuya
Отправить личное сообщение для melky Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 2,948

создайте глобальную переменную.

в функции f1 изменяйте её на true в начале действия, и на false в конце.

в функции f2 проверяйте, не равна ли глобальная переменная true.
__________________
"Лучшее" ―
враг
"хорошего".
В JavaScript нет нерешимых задач.
Ответить с цитированием
  #5 (permalink)  
Старый 03.02.2012, 09:21
Интересующийся
Отправить личное сообщение для platitude Посмотреть профиль Найти все сообщения от platitude
 
Регистрация: 27.01.2012
Сообщений: 11

как создать глобальную переменную для двух разных функций в подключаемом файле .js?
Ответить с цитированием
  #6 (permalink)  
Старый 03.02.2012, 09:23
Аватар для melky
4xuya
Отправить личное сообщение для melky Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 2,948

Вы не имеете доступа к функциям ?
__________________
"Лучшее" ―
враг
"хорошего".
В JavaScript нет нерешимых задач.
Ответить с цитированием
  #7 (permalink)  
Старый 03.02.2012, 09:27
Интересующийся
Отправить личное сообщение для platitude Посмотреть профиль Найти все сообщения от platitude
 
Регистрация: 27.01.2012
Сообщений: 11

доступ имею, я около месяца только изучаю JavaScript =)
Ответить с цитированием
  #8 (permalink)  
Старый 03.02.2012, 09:31
Аватар для melky
4xuya
Отправить личное сообщение для melky Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 2,948

Тогда будет лучше, если Вы прочитаете эту статью : Внутренние механизмы работы переменных, замыкания
__________________
"Лучшее" ―
враг
"хорошего".
В JavaScript нет нерешимых задач.
Ответить с цитированием
  #9 (permalink)  
Старый 03.02.2012, 09:35
Интересующийся
Отправить личное сообщение для platitude Посмотреть профиль Найти все сообщения от platitude
 
Регистрация: 27.01.2012
Сообщений: 11

melky, спасибо за помощь, сейчас прочту и попробую последовать вашему совету =)
Ответить с цитированием
  #10 (permalink)  
Старый 03.02.2012, 10:03
Интересующийся
Отправить личное сообщение для platitude Посмотреть профиль Найти все сообщения от platitude
 
Регистрация: 27.01.2012
Сообщений: 11

melky, попробовал в начало файла добавить:
var complete;
в начале f1 добавил:
complete=false;
в конце, перед "return false;", добавил:
complete=true;

не помогло, клик всё равно происходит, зада сводится к разделению кликов по происхождению я так понимаю =) как это осуществить?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получить значение дива по class (Sandr) Общие вопросы Javascript 2 18.06.2011 14:00
padding-left увеличивает ширину дива cmygeHm (X)HTML/CSS 4 25.05.2011 23:45
Изменение стиля родительского элемента при :hover дочернего lanzs Элементы интерфейса 2 16.10.2010 12:28
Срезание дива по диагонали Acrossfy jQuery 15 15.10.2010 10:00
Закрытие родительского окна без диалога Гость Общие вопросы Javascript 1 27.10.2008 23:01