- Форум
- Справочник
- Клик срабатывает со второго раза
- Кнопка срабатывает со второго клика, а должна с первого, как устранить?
- 3 ответа 3
- Почему клик не срабатывает больше одного раза?
- Почему onclick работает не с первого раза
- Как правильно удалить страницы с сайта и избежать проблем
- В Google Ads API изменятся правила для наборов user_identifers в UserData
Форум
Справочник
| Опции темы | Искать в теме |
и целая структура имеет следующий вид:
Добавление строк реализуется с помощью AJAX в режиме синхронном. В целом, функция, которая отвечает за добавление записей выглядит так (некоторые ненужные строки удалены, что бы было легче читать):
функция parseLine функция parseLine возвращает строку типа
текст строки лога.
И всё, вроде бы, хорошо, всё работает.
НО: редко, но бывает такое, что кнопки и чекбоксы верхней панельки не срабатывают с первого раза. Кликаешь, ничего не происходит. Кликаешь второй раз и всё в порядке. Подозреваю, что это из-за того, что добавление строки лога блокирует интерфейс на доли секунды. И вот вопрос: как от этого избавиться? И можно ли.. Иногда это мешает. Что не есть хорошо.
PS: используется только чистый javascript. Возможность использования библиотек или фреймворков исключена.
PSS: не знал в какую ветку форума закинуть тему. Оставил здесь, так как главная проблема в элементах..
Источник
Клик срабатывает со второго раза
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Клик срабатывает только со второго раза
Простенький код, все работает на реагирует на клик только со второго раза, как исправить ? Вот код.
Onklick() срабатывает со второго раза
Всем доброго времени суток. Только начинаю изучать js просьба не пинать. В общем делаю проверку на.
Спойлер срабатывает со второго раза
Здравствуйте, почему спойлер срабатывает после второго клика, и затем безперебойно, как уладить? .
Событие срабатывает со второго раза
Здравствуйте! Суть проблемы такова. Имеется скрипт, который рисует карты (он в прикрепленном.
Web_Master, извиняюсь)) запарился не вставил)
sendxt, Потому что у тебя логика скрипта такая.
Изначально твой flag === 0.
Далее ты делаешь click по любому элементу
проверяется условие на отображение блока:
в условии, что бы блок показался (display: block)
надо что бы flag был равен 0
твоё условие срабатывает первый раз и меняет твой flag на 1
а далее ты хочешь что бы отобразился следующий элемент.
но для того что бы он отобразился надо что бы flag был равен 0.
а поскольку у тебя 1 переменная на все блоки то она до этого момента равна 1.
далее ты кликаешь. по условию переменная не равна 0 .
и flag становится равен 0
далее всё срабатываете и уходит в описанный мною выше цикл.
Добавлено через 43 секунды
alexsamos33, хрен бы с ним что строка число.
JS приведёт всё к нужному виду.
у него логика нарушена.
Добавлено через 8 минут
sendxt, Вот тебе нормальные вкладки на jQuery 1 скрипт на всё.
Источник
Кнопка срабатывает со второго клика, а должна с первого, как устранить?
Во внешнем файле функция:
Данная функция вызывается в теге div onClick=»btn1(‘p1’) . По нажатии на кнопку должно открываться окно, при повторном — закрываться. Все работает, но при загрузке или обновлении страницы кнопка срабатывает только со второго раза, все последующие разы — с первого. Если прописать
непосредственно в теге без использования внешнего файла, то кнопка срабатывает с первого раза.
Теперь вопрос:
Возможно ли эту проблему исправить при использовании функции во внешнем файле, если да, то как? Или этот бок не исправим и все надо прописывать в документе?
Наглядный результат.
3 ответа 3
Uncaught ReferenceError: btn1 is not defined
class в js — это зарезервировано, и использовать это слово в качестве названия переменной приводит к ошибке.
Была аналогичная ситуация.
Вынес display:none из файла css в основной файл и всё заработало.
UPD Прошу прощения за неполный ответ.
Смысл в том, что document.getElementById(«id»).style представляет только inline стиль.
Т.е. для
Таким образом, с точки зрения браузера элементы в обоих случаях будут спрятанными, но с точки зрения javascript и document.getElementById(«id»).style в частности стиль будет отличаться.
Соответственно, если вы присваиваете
то это приводит к
Ну и теперь функция ваша будет работать с пустым значением style.display для первого клика, когда inline стиль пустой, а применен стиль из stylesheet’а. И при последующих кликах будет меняться уже inline стиль в зависимости от предыдущих указанных в нем значений.
как вариант можно еще написать
Так еще лучше и короче.
UPD2 Если есть желание не завязываться на знание того, что у вас в таблицах стилей прописано, то можно получить итоговый вычисленный стиль для элемента.
тогда будет работать при любых заданных стилях, хоть в stylesheet, хоть в inline стиле.
Источник
Почему клик не срабатывает больше одного раза?
Оценить 6 комментариев
Во-первых, прислушайтесь к совету, что дал Роман, и сделайте так:
Во-вторых, если после первого раза перестаёт срабатывать, то нужно смотреть на элемент .ui-state-default в консоли и наблюдать, что с ним происходит после клика. Мне кажется, вполне очевидно, что такого класса больше нет.
Update
Если в найденных ячейках событие срабатывает 1 раз, а попытка поймать его в document не венчается успехом, какой вывод следует?
Очевидно, что:
— после выбора даты таблица перерисовывается полностью
— всплытие события принудительно останавливают где-то в пределах элемента с инициализацией календаря
Как поступить в таком случае?
1. Можно вспомнить про первую фазу распространения события и написать примерно такое для борьбы с любителями preventDefault
2. А можно (и это правильный способ), почитать API того плагина, что вы используете, и найти там вот такую штуку:
Источник
Почему onclick работает не с первого раза
- Поисковые системы
- Яндекс
- Каталоги сайтов
- Прочие поисковики
- Агрегаторы и доски объявлений
- Практика оптимизации
- Общие вопросы оптимизации
- Частные вопросы — ранжирование, индексация, бан
- Сервисы и программы для работы с SE
- Любые вопросы от новичков по оптимизации
- Ссылочные и пользовательские факторы
- Поисковые технологии
- Doorways & Cloaking
- Трафик для сайтов
- Поисковая и контекстная реклама
- Google Adwords
- Яндекс.Директ
- Тизерная и баннерная реклама
- Общие вопросы рекламы
- Монетизация сайтов
- Партнерские программы в Интернете
- Контекстная реклама
- Google AdSense
- Рекламная Сеть Яндекса
- Размещение тизерной и баннерной рекламы
- Общие вопросы
- Сайтостроение
- Веб-строительство
- Статистика и аналитика
- Доменные имена
- Администрирование серверов
- Хостинг
- Безопасность
- Usability и удержание посетителей
- Копирайтинг
- Социальный Маркетинг
- Вконтакте
- YouTube
- Facebook & Instagram
- TikTok
- Telegram
- Общие вопросы
- Общение профессионалов
- Семинары и конференции
- eCommerce, интернет-магазины и электронная коммерция
- Телефония и коммуникации для бизнеса
- Деловые вопросы
- Финансы
- Cчет в Яндекс.Деньгах
- Криптовалюты
- Инвестиции
- Экономика
- Правовые вопросы
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты — покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки — обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
- О сайте и форуме
- Самое разное
- Курилка
- Встречи и сходки
- Железо и софт
Как правильно удалить страницы с сайта и избежать проблем
В Google Ads API изменятся правила для наборов user_identifers в UserData
Помаленьку делаю дизайн тут. Там снизу менюшка в виде кнопки, по нажатии на которую, срабатывает
Простецкая функция ShowMenu:
Так вот, при первом клике ничего не происходит, меню нормально открывается\закрывается только со 2 клика. С чем связано такое поведение?
По умолчанию display установлен у тебя скорее всего и не none и не block
Сначало он проверяет, видит что значение не none и ставит none
f потом уже значение none и он срабатывает как нада
Silent_Kill, display: none по умолчанию прописано в stylesheet.css
Добавлено: прописал стиль в самом шаблоне, а не в css файле и всё заработало, спасибо.
заглянул на сайт — убей ссылку на #
ваще там лучше не a юзать, а спан
onclick=»javascript:ShowMenu(); return false;»
Источник