swfobject присваивает класс - ошибка Internet Explorer - PullRequest
0 голосов
/ 23 марта 2011

У меня есть фрагмент кода PHP, который перебирает все баннеры, хранящиеся в базе данных.Если код обнаруживает, что баннер является swf, он встраивает его следующим образом:

swfobject.embedSWF(\"".$banners->banner_url."\", \"flash_ad_con".$count."\", \"".$dimens['w']."\", \"".$dimens['h']."\", \"9.0.0\", false, false, false, {class: 'flash_ad_con'});

Это прекрасно работает во всех браузерах, кроме любой версии Internet Explorer.Если я удаляю необязательные атрибуты, которые я добавляю (в данном случае «класс»), например так:

swfobject.embedSWF(\"".$banners->banner_url."\", \"flash_ad_con".$count."\", \"".$dimens['w']."\", \"".$dimens['h']."\", \"9.0.0\", false, false, false);

Затем он работает в Internet Explorer, но, очевидно, не применяет класс и поэтому не выровнен,Я не могу установить выравнивание с использованием идентификатора, так как оно динамическое, и я хочу избежать изменения таблицы стилей на PHP, если это возможно.

Я думаю, причина, по которой это не работает в IE, заключается в том, что «класс»зарезервированное слово, но я использую его в объекте JSON, поэтому я не думал, что это повлияет.

У кого-нибудь есть обходные пути или альтернативные способы сделать это?Я бы добавил его в строку, но поскольку элементы DOM создаются во время выполнения, я не могу.

Спасибо

1 Ответ

0 голосов
/ 23 марта 2011

Нашел решение - использование 'styleclass' вместо 'class' в объекте JSON работает во всех браузерах.Я не смог найти это нигде в официальной документации, я нашел его в разделе «Проблемы» на их сайте Google Code

...