Подавить событие щелчка SWF в IE, вместо этого следовать тегу привязки

StackOverflow https://stackoverflow.com/questions/544123

  •  23-08-2019
  •  | 
  •  

Вопрос

Сценарий:У вас есть SWF-файл со встроенным событием щелчка, которое переводит вас на определенную веб-страницу.Вы хотите использовать этот SWF-файл (исходный код недоступен), но событие щелчка приведет вас на другую веб-страницу.Обертывание встроенного SWF в тег привязки и установка для SWF значения wmode=transparent, похоже, работает только в FF, а не в IE, и, поскольку рассматриваемый веб-сайт обслуживает неподкованную в технологиях аудиторию, совместимость с IE очень важна.

Какие настройки необходимо изменить, чтобы тег привязки учитывался браузером?

Это было полезно?

Решение

Создайте собственное флэш-приложение, которое встроит основной SWF-файл и поместит поверх него прозрачный спрайт для захвата щелчков мыши.Вы можете передать целевой URL-адрес в качестве параметра.

Другие советы

Если бы вы задали этот вопрос несколько месяцев назад, я бы посоветовал вам поместить прозрачный GIF-файл перед SWF, но в наши дни это можно расценить как кликджекинг и отсутствие скриптов, и некоторые антивирусные инструменты могут прийти в ярость, когда увидят это.(а может и нет, поскольку это прозрачное изображение будет непосредственно в <a> тег, и если swf "случайно" окажется под ним, что ж...ничего страшного)

Попробуйте использовать очень высокий z-индекс для кликабельной части.По умолчанию Flash в IE размещается очень высоко в порядке стека, поэтому все клики по умолчанию переходят к нему.Судя по http://www.webmasterworld.com/css/3639440.htm, 99 должны это сделать, но помните, что фактический z-индекс, используемый Flash, мог измениться со времени этого сообщения (если для z-индекса существует максимальное значение, они могли бы использовать его сейчас, что сделало бы это невозможным - это будет зависеть от реализация, я считаю).

Также протестируйте с другими браузерами И в других операционных системах.Поведение может отличаться.

В IE8 появилась новая защита от кликджекинга, но я не думаю, что это повлияет на этот сценарий.Возможно, вы захотите посмотреть http://blogs.msdn.com/ie/archive/2009/01/27/ie8-security-part-vii-clickjacking-defenses.aspx прежде чем решить пойти по этому пути, на всякий случай.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top