2010-09-20 5 views
0

Я использую Open Flash Chart 2 для представления графиков и диаграмм на моем сайте. Я пытаюсь загрузить данные JSON для диаграммы с той же страницы. Существует несколько способов сделать это.Открыть флеш-диаграмму на IE 8

  • Использование получить-данные свойства диаграммы и передать яваскрипт метода, который возвращает JSON
  • Используйте open_flash_chart_data метод, который флэш-схему умеет читать данные из

Все кажется, работает хорошо на FireFox, Chrome и т. д. Единственный браузер, у которого есть проблема, - IE (я использую IE 8)

Немного в open source Я обнаружил, что библиотека использует ExetrnalInterface для выполнения javascript-метода, внешний интерфейс чтобы быть доступным, он возвращает null для любого выполнения метода в IE.

Похоже, эта проблема уже известна сообществу разработчиков Flash, поэтому я пробовал несколько вещей (хотя есть некоторые решения, которые я не мог использовать в библиотеке - например, уникальный идентификатор для элемента embed. генерирует его)

В заключение я, вероятно, не имею простого решения для своей проблемы.

Мой код:

Это JQuery вызов к открытой флэш-графике с JavaScript:

$('#myDiv').flash 
(
    { 
     src: ofc_swf, 
     width: "400", 
     height: "250", 
     allowscriptaccess: "always", 
     wmode: "transparent",     
     flashvars: {"get-data": "getFlashJson"}      
    }, 
    { 
     version: 8 
    } 
); 

И это Java-метод, который будет возвращать источник JSON диаграммы:

function getFlashJson() 
{ 
    var val = $("#myJson").val(); 
    return val; 
} 

Буду признателен за любую помощь по этому вопросу.

Благодаря

+0

Глядя на общую проблему получения нулевого ответа от ExetrnalInterface в IE, Большинство сообщений говорят, что решение для этого заключается в добавлении уникального атрибута classid в тег объекта, используемый для встраивания объекта. Я не знаю, как использовать эту информацию при использовании открытой флеш-карты. Пожалуйста, помогите! – bizz

ответ

0

Попробуйте обновить swfobject.js: для меня, версия 2.2 была решена мои проблемы.

0

У меня была эта проблема и я нашел решение.

Удалите части кода флэш в файле PHP, который предисловие фильм ID с ie_, а также изменить SWFObject Javascript код этого:

function findSWF(movieName) { 
    if (navigator.appName.indexOf("Microsoft")!= -1) { 
    return window[movieName]; 
    } else { 
    return document[movieName]; 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^