J'ai une page simple avec un swfobject incorporé dessus.
On dirait que IE a des problèmes avec la propriété 'filters' sur l'objet incorporé.
Ma page de test ressemble que:IE lance 'Erreur non spécifiée' lors du rechargement d'une page avec swfobject incorporé
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>test</title>
<script type="text/javascript" src="../scripts/swfobject.js"></script>
<script type="text/javascript" src="../scripts/jquery-1.3.2.min.js"></script>
<script type="text/javascript">
var url = "";
$(function()
{
var flashvars = {};
var parameters = {};
var attributes = {};
flashvars["data-file"] = url;
parameters.wmode = "transparent";
swfobject.embedSWF("test.swf", "graph1", "100%", "100%", "9.0.0", "expressInstall.swf", flashvars, parameters, attributes);
});
</script>
<style type="text/css">
#graph1
{
margin:30px;
height: 400px;
width: 600px;
}
</style>
</head>
<body>
<div id="graph1"></div>
</body>
</html>
Note: le fichier test.swf
est le paquet swfobject du download page.
maintenant quand je recharger la page, il jette une «erreur non spécifiée» sur IE, mais pas sur firefox dans lequel la propriété filters est définie sur undefined
.
le code qui semble provoquer l'erreur est dans swfobject.js v2.2 (lignes 494-504):
/*! SWFObject v2.2 <http://code.google.com/p/swfobject/>
is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
*/
function removeObjectInIE(id) {
var obj = getElementById(id);
if (obj) {
for (var i in obj) {
if (typeof obj[i] == "function") {
obj[i] = null; // when (i == 'filters') we get the error
}
}
obj.parentNode.removeChild(obj);
}
}
Est-ce que quelqu'un a une idée pourquoi cela pourrait se produire?
ma solution actuelle est dans le même sens. Je ne l'aime pas. merci quand même :) – kfiroo
Oui, bien sûr, c'est plus de cosmétiques au lieu d'un vrai bugfix. –