Тег привязки на flash не работает в chrome

#html #css #flash #google-chrome

#HTML #css #flash #google-chrome

Вопрос:

следующий код работает на всех устройствах, кроме Chrome:

 <a target="_blank" href="/FooodJournal">
        <object width="265" height="135">
            <param name="movie" value="2991BCTTor/xx.swf">
            <param name="allowFullScreen" value="true">
            <param name="allowscriptaccess" value="always">
            <param name="wmode" value="transparent">
            <param name="FlashVars" value="fileID=4928amp;context=12amp;embeded=trueamp;environment=production">
            <embed width="265" wmode="transparent" height="135" src="2991BCTTor/xx.swf" flashvars="fileID=4928amp;context=12amp;embeded=trueamp;environment=production" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true"></embed>
        </object>
    </a>
  

Flash используется для создания анимированной кнопки, а тег привязки позволяет щелкнуть по ней, чтобы перейти на другую страницу. В большинстве браузеров вы можете щелкнуть в любом месте на объекте Flash, и ссылка заработает…но в Chrome ссылка отображается в строке состояния при наведении курсора мыши на элемент flash, но ничего не делает при нажатии на нее. Однако под элементом flash есть небольшая область (около 19 пикселей), где ссылка работает.

Как я могу заставить это вести себя в Chrome так же, как и в других браузерах?

Комментарии:

1. Сделайте нам одолжение и разместите где-нибудь этот код, чтобы люди могли просмотреть его в свободном доступе.

Ответ №1:

Попробуйте добавить a { pointer-events: none; } в свой CSS. Конечно, вы должны настроить селектор так, чтобы он соответствовал только этому конкретному привязке.

Для получения дополнительной информации о pointer-events см. http://dev.w3.org/csswg/css3-ui/#pointer-events и https://developer.mozilla.org/en/css/pointer-events.

Ответ №2:

Попробуйте добавить pointer-events:none; в тег flash OBJECT в качестве встроенного стиля:

 <a target="_blank" href="/FooodJournal">
        <object width="265" height="135" style="pointer-events:none;">
            <param name="movie" value="2991BCTTor/xx.swf">
            <param name="allowFullScreen" value="true">
            <param name="allowscriptaccess" value="always">
            <param name="wmode" value="transparent">
            <param name="FlashVars" value="fileID=4928amp;context=12amp;embeded=trueamp;environment=production">
            <embed width="265" wmode="transparent" height="135" src="2991BCTTor/xx.swf" flashvars="fileID=4928amp;context=12amp;embeded=trueamp;environment=production" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true"></embed>
        </object>
    </a>
  

Это устранило проблему для меня в Chrome и не имело никаких побочных эффектов в других браузерах.

Комментарии:

1. Для меня, вместо решения проблемы, этот ответ также сломал ее в FireFox.