В настоящее время у меня есть приложение, которое вызывает создание и отображение диаграмм из данных различных объектов с использованием JS. Однако у меня возникли серьезные проблемы. Может кто-нибудь объяснить, почему следующий код работает просто отлично при статической вставке на страницу, но при использовании через rjs "page.replace_html my_div_id" он удаляет ВСЕ ЕЩЕ на странице:
<script language="JavaScript" type="text/javascript">
<!--
if (AC_FL_RunContent == 0 || DetectFlashVer == 0) {
alert("This page requires AC_RunActiveContent.js.");
} else {
var hasRightVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision);
if(hasRightVersion) {
AC_FL_RunContent(
'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,45,0',
'width', '800',
'height', '500',
'scale', 'noscale',
'salign', 'TL',
'bgcolor', '#777788',
'wmode', 'opaque',
'movie', 'charts',
'src', 'charts',
'FlashVars', 'library_path=xmlswfitems/charts_library&xml_source=xmlcharts/M1 Building One',
'id', 'my_chart',
'name', 'M1 Building One',
'menu', 'true',
'allowFullScreen', 'true',
'allowScriptAccess','sameDomain',
'quality', 'high',
'align', 'middle',
'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
'play', 'true',
'devicefont', 'false'
);
} else {
var alternateContent = 'This content requires the Adobe Flash Player. '
+ '<u><a href=http://www.macromedia.com/go/getflash/>Get Flash</a></u>.';
document.write(alternateContent);
}
}
// -->
</script>
... также, это полностью терпит неудачу с IE. Мои единственные выводы - из Safari («непревзойденный тег для встраивания»), Firefox (браузер делает вид, что диаграмма никогда не загружается, даже если она есть), IE (неспецифическая ошибка prototype.js). К вашему сведению, я использую XML / SWF Charts. Я пишу этот код с нуля, так как мне не нужны существующие / устаревшие библиотеки SWFCharts, поэтому, пожалуйста, не предлагайте решения для этой конкретной библиотеки.
Best.