Различные способа воспроизведения звука. Different Ways to Play a Sound from a Web Page
Многие скажут, что звук на сайте в наши дни это моветон.
Но бывают случаи, когда стоит весьма конкретная задача, которую приходится решать. Воспроизведение звука по событию типа mouseover и т.д. без установки доп. плагинов клиентом.
Из всех предложенных авторами вариантов, мне этот показался наиболее оптимальным с точки зрения кроссбраузерности и большой вероятности наличия у клиента уже установленного флеша.
Скопировал себе source code, но сами ссылки так и не заработали.
Помогите, пожалуйста разобраться с этим или предложите вариант замены, например мп3 и т.д. И так сутки насмарку.
Пиво, ништяки, неокубик.
Честно говоря, есть ощущение путаницы жопы с пальцем. Какие плагины вы имеете в виду? JavaScript плагины? А что в них плохого? Если же сторонние плагины не встроенные в браузер, то по сути до HTML5 у браузеров такой возможности и не было. Да и с его приходм есть не у всех браузеров. Так что лучше уточнить формулировку.
А что хорошего в том, что когда пользователь заходит на сайт, то он видит не сам сайт во всей его красе, а что-то типа «Установите следующие компоненты...» или «Для просмотра содержимого вам нужен ActiveX...» или «Броузер заблокировал содержимое по причине отсутствия...» Ну что-то в этом роде.
Я спросил про javascript-плагины. В реальности это обыкновенные js библиотеки. Тех трагических последствий, о которых вы пишете они не вызывают. А вот сторонние плагины (о которых вы как раз пишете) действительно требуют установки. Но здесь есть ряд НО. Ряд этих плагинов уже есть у каждого де-факто, вот и вы приводите под маской «безплагинного» вполне себе «плагинный» код, просто он полагается на то, что де факто есть у большинства.
Выбранное тобой решение использует флэш-плагин, который, как известно, есть не у всех, а у многих из тех: у кого есть — блокируется всяческими flashblock'ами. Текущая реализация не позволит пользователям, включающим флэш по желанию, сделать это у тебя. Вероятно, над как-то отлавливать эту штуку и предлагать им удобный вариант включения.
Кроме того, в демке используется файл формата .wav, лучше заменить его на значительно более компактный .mp3
Большая ставка на то, что большинство пользователей пользуются соц. сетями. В наше время практически 90% этих людей, если не все 100%, смотрят там медиа данные, что само собой подразумевает наличие Flash.
А так, Кэп, если посмотреть на мой пост, последний абзац, то я там тоже поднимал вопрос об мп3 и любых альтернативных методах.
То, что мне здесь подсказали, я доГуглил и реализовал в коде. Подскажите точнее, в каком направлении копать — я буду пробовать.
Отсутствие флэша не мешает слушать музыку ВКонтакте и смотреть видео на ютубе, современым браузерам для этого не нужны сторонние плагины.
Не понимаю, что значит «Кэп», но уточню, что использование мп3-файла в данном случае — это никакой не альтернативный метод. Просто замени файл одного типа другим и всё продолжит работать.
Оказывается, проблема в моём браузере была, побитый он, кажется, или глючит его.
На другом ноуте все работает и в
Опера 11.10 и в
Mozilla 3.6.18
только IE 7 зависает на открытии страницы.
Может кто-нибудь придумает мне вариант с проверкой на ИЕ и чтобы другая любая процедура подключалась? из тех же примеров www.phon.ucl.ac.uk/home/mark/audio/?
Тут новая задача возникла походу пляски. Усложним:
надо сделать так, чтобы и при нажатии на ссылку проигрывался коротенький звук, с осуществлением перехода по ссылке (после 1 сек задержки для доигрывания звука — это самый простой вариант, как я вижу) при условии сохранения рабочего атрибута href у тега а на случай войны отключенного JS у пользователя.
Не подскажите, надеюсь, последний вопрос, как сделать, чтобы не отменялось выполнение функции по OnClick, как в примере ниже событием OnMouseOut? А то файл перестает проигрываться, хотя по OnMouseOut doPlay не вызывается.
Буду очень признателен.
А что не так с атрибутом href? Суём туда ссылку, по онклик запускается звук, если js отключен — просто переходим по ссылке без звука. Возможно, я снова не понял, какая стоит задача
а, ВСЕ ПОНЯЛ. Спасибо.
Anywhere you put an onclick event with a javascript call, if you add return false then the default behavior (what would have happened without the onclick event) will be disregarded.
Не подскажите, как сделать проверку в функции doStop, прежде чем она сработает, играется ли файл с определенным имененем, и если да, тогда пропустить ее действие.
doStop вызывается через OnMouseOut.
38 комментариев
Кроме того, в демке используется файл формата .wav, лучше заменить его на значительно более компактный .mp3
А так, Кэп, если посмотреть на мой пост, последний абзац, то я там тоже поднимал вопрос об мп3 и любых альтернативных методах.
То, что мне здесь подсказали, я доГуглил и реализовал в коде. Подскажите точнее, в каком направлении копать — я буду пробовать.
Не понимаю, что значит «Кэп», но уточню, что использование мп3-файла в данном случае — это никакой не альтернативный метод. Просто замени файл одного типа другим и всё продолжит работать.
а wav у меня по 15 кб. Куда уж компактней. Но совет приму во внимание.
работать на локалхосте не будет
Пример:
Скачать:
На другом ноуте все работает и в
Опера 11.10 и в
Mozilla 3.6.18
только IE 7 зависает на открытии страницы.
Может кто-нибудь придумает мне вариант с проверкой на ИЕ и чтобы другая любая процедура подключалась? из тех же примеров
надо сделать так, чтобы и при нажатии на ссылку проигрывался коротенький звук, с осуществлением перехода по ссылке (после 1 сек задержки для доигрывания звука — это самый простой вариант, как я вижу) при условии сохранения рабочего атрибута href у тега а на
случай войныотключенного JS у пользователя.Буду очень признателен.
Вопрос с
пока остается. Придется что ли использовать…
Anywhere you put an onclick event with a javascript call, if you add return false then the default behavior (what would have happened without the onclick event) will be disregarded.
doStop вызывается через OnMouseOut.