imho.ws |
|
|
Сообщения:
Перейти к новому /
Последнее
|
Опции темы |
26.03.2007, 12:23 | # 1 |
Newbie
Регистрация: 24.11.2006
Адрес: Москва, Пресня
Пол: Male
Сообщения: 26
|
как вставить звук в тег <a> на события onmuseover?
Собственно сабж.
Есть ссылка, при наведении на которую должен играть звук (mp3-шка маленькая, типа щелчок). Как это можно реализовать? Помогите пожалуйста!! |
29.03.2007, 06:46 | # 4 | |
Junior Member
Регистрация: 26.09.2004
Адрес: в Интернете
Сообщения: 138
|
Цитата:
1. создаем ни на что не ссылающийся bgsound, задаем ему определенный идентификатор: Код:
<bgsound id=sound1 src=''> Код:
<a href="#" onmouseover="document.all['sound1'].src='1.mp3'"> |
|
25.04.2007, 18:50 | # 6 |
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
|
Чтобы кроссбраузерно, нужно еще и <embed name="sound"...> использовать, для НЕ ИЕ, которые <bgsound ...> не понимают.
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
26.04.2007, 00:40 | # 7 | |
Junior Member
Регистрация: 26.09.2004
Адрес: в Интернете
Сообщения: 138
|
Цитата:
Код:
<embed id=sound1 src='filename.mp3' autostart=false hidden=true> <a href="#" onmouseover="document.all['sound1'].play()" onmouseout="document.all['sound1'].stop()">Текст ссылки</a> Практически с ИЕ проблем, опять же не возникает, но вот та же Opera, к примеру, при своих стандартных настройках mp3-файл воспроизводить отказывается, да еще и форму embed не прячет (скриншот в аттаче). |
|
02.05.2007, 23:39 | # 8 |
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
|
Ну насчёт скорости тут уж действительно ничего не поделаешь - внешний плагин он и есть внешний. Ну а что делать, если для Браузер есть браузер, а звук играют другие приложения - тут всеравног должен быть этот вызов. Когда закешируется, все играется вполне приемлемо.
Да, при стандартных настройках Опера помоему и не может ничего воспроизводить. Думаю что это нормально что для использования плагинов где-либо их нужно установить, не находите? С другой стороны, те кто пользуется Оперой, и хотят слушать в ней встроенные звуки (и возможно видео) имеют уже настроенные подобные плагины в ней. Вот насчет прячет, тут сложнее. Прячет-то прячет, только вот при display: none у меня она почему-то отказалась играть звук вообще... Не знаю с чем это связано, не исключаю что с кривизной моих рук. Но, с дургой стороны, особенно я мучаться и не стал - ну можно же сделать 1на1 пиксел (а может и 0на0 получится, надо попробовать) его размером, и разместить в нужном месте страницы, чтобы это было не заметно. Не вижу в этом проблемы.
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
04.05.2007, 09:05 | # 9 | |||
Junior Member
Регистрация: 26.09.2004
Адрес: в Интернете
Сообщения: 138
|
Цитата:
Цитата:
Насколько понимаю, желательно было бы написать такой код, который мог бы работать у ЛЮБОГО клиента, все зависимости от браузера при стандартных (или общепринятых) настройках. Цитата:
Единственное решение (кроме flash), на данный момент: 1. Так как звук недолгий, то не будет очень много весить и в wav-формате (для наименьшего размера можно частоту дискретизации и число каналов уменьшить - до 8KHz/mono): конвертируем mp3-файл в wav. Wav, в свою очередь, поддерживается напрямую, без плагинов и IE, и Opera. 2. В самый конец описания страницы (так, чтобы дизайн не "съехал") помещаем пустой блок с идентификатором: Код:
<span id=s1 style=""></span> Код:
<a href="#" onmouseover="document.all['s1'].innerHTML='<embed src=\'filename.wav\' autostart=true width=0 height=0>'" onmouseout="document.all['s1'].innerHTML=''">Текст ссылки</a> |
|||