Хорошо, я нашел кучу ответов о родных функциях, таких как window.onblur и window.onfocus ... Но они не поможет, так что я хотел бы быть более конкретнымВоспроизведение звука только в одном окне, в котором активен (на одном веб-сайте) с использованием javascript (возможно, jquery)
- Допустим, вы открыть несколько вкладок одного сайта
- Допустим, вы получите сообщение и есть звук, чтобы объявить сообщение
- Как у вас есть несколько открытые вкладки, вы услышите звук количества открытых вкладок. Что делает how'd'u'callit симфонию
Лучшие решения я нашел до сих пор, но не работают 1. window.onfocus и window.onblur 2. Воспроизведение звука, если вар InFocus истинно, не играть, если не 3. это броузеры 4. это просто 5. Она не работает
Почему лучшее решение не будет работать? Скажем, вы переключаете фокус на другую вкладку другого веб-сайта, ваш сайт теряет фокус, поэтому вы не услышите звук. Еще хуже, скажем, вы переключитесь на другую программу, затем браузер теряет фокус, и вы не услышите звук
Итак, что мне делать?
Ну, на самом деле серверное решение также не очень хорошо. Если пользователь входит в систему и видит новые сообщения, но предпочитает игнорировать их какое-то время. В этом случае звук будет воспроизводиться ... но он НИКОГДА не будет воспроизводиться снова, когда пользователь будет входить в следующий раз, НО СООБЩЕНИЯ НЕ ДОЛЖНЫ ПРОЧИТАТЬ. Флаг на стороне сервера фактически заставит их читать ... в то время как они отсутствуют, вы видите – Otvazhnii
Вы можете очистить флаг по истечении заданного периода времени или во время выхода пользователя из системы. Вы можете иметь отдельные флаги для чтения и уведомления. – JJJ