Додаємо звук на дії користувача на сторінці

Додаємо звук на дії користувача на сторінці

Додаємо звук на дії користувача на сторінці

Якось раз на одному сайті замовник попросив озвучити меню, тобто додати звук при наведенні миші на пункт. Меню при цьому повинно було залишатися на html, тобто повністю флешевих його зробити було не можна.

Для цього я буду використовувати середу Abode Flash CS5, але та ж сама інструкція підійде і для більш молодших версій, головне щоб підтримувався AS 3. Створимо новий файл з підтримкою Actionscript 3.0. Так як від флешки треба буде тільки відтворювати звук, то встановимо у властивостях документа розміри їй 1х1 піксель. На панелі властивостей пропишемо клас основного мувіка.

Додаємо звук на дії користувача на сторінці

Детальніше цей код я опишу нижче, а зараз додамо в бібліотеку звуковий файл, який будемо відтворювати.

Файл - Імпорт - Імпортувати в бібліотеку. вибираємо потрібний файл. Сенсу брати файл з високим бітрейтом або стерео немає, звук у нас все одно буде короткий і службовий по суті.

Далі вибираємо вкладку бібліотека і знаходимо там наш файл. Натискаємо правою кнопкою, вибираємо властивості і встановлюємо наступні галочки і прописуємо ім'я класу clickSound.

Додаємо звук на дії користувача на сторінці

Нам важливі галочки Експорт для ActionScript і Експорт в кадр 1. Також тиснемо на олівець, вибираємо ніж редагувати файл і просто його зберігаємо без змін.

Тепер повернемося до коду класу sounder.

  • sndClick - наш звуковий файл
  • sndExplodeChannel - для відтворення звуку.
  • doPlay () - власне програє звук
  • frame1 () - ActionScript, який ми додамо в перший кадр мувіка. У ньому ми створюємо об'єкт з нашим звуком і задаємо зовнішній інтерфейс - функцію clickSound, при виклику якої будемо виконувати метод doPlay ()
  • sounder () - конструктор класу, в ньому додаємо в перший кадр скрипт з методу frame1 ()

Називати as-файли краще на ім'я описаного в них класу.

При натисканні Ctrl + Enter ми отримаємо флешку sounder.swf.

Тепер нам треба вставити флешку на сторінку і в потрібний час викликати її функцію - clickSound ().

Як видно, в коді використовується jQuery і SWFObject, але вони використані для зручності, вони не є необхідністю. Суть в тому, що ми визначаємо обробник наведення миші на пункт меню і в цьому обробнику викликаємо функцію clickSound () з флешки.