我通过jquery ()将一些内容(不是HTML头或其他内容,只是来自PHP的HTML格式的内容)加载到.load中。
它工作得很好,除了一些用amCharts动态加载的基于闪存的amCharts (www.amcharts.com),使用swfObject。该文件单独加载,工作并加载Flash图表。在使用.load()加载文件时,似乎加载了文件,但未执行脚本,也未执行swfObject。
现在,我不确定在这里给你提供什么代码,所以我只给出一些相关的东西…
因此,在主父节点的标题中是监听导航点击以加载内容的代码(这是我们的amcharts):-
$('a.leftNav').click(function() {
page = $(this).attr('page');
metID = $(this).attr('metID');
if($("#mainRight").is(":visible")) { $('#mainRight').hide(200); }
switch(page) {
case 'metrics': $("#mainRight").load("content.php?load=mets", { metID: '5000227' }); break;
}
$('#mainRight').show(300);
});
所以这是可行的。加载正确的页面并执行PHP,如转到页面content.php?load=mets所证明的那样。PHP在该页面上生成的代码是:
<div class="amChart" id="chart_views_div">
正在加载图表...
这应该是交换的swfObject代码,我知道(我已经将其输出到一个文本文件中)正在工作。
.load()和加载的swfObject和JS通常会发生什么?
发布于 2010-07-06 23:10:28
当jquery .load()
完成时,你需要调用一个函数来初始化swfObject替换,因为我相信swfObject通常会在window.load上初始化。
如下所示:
$("#mainRight").load("content.php?load=mets", function() {
// initialise swfObject here e.g.
swfobject.embedSWF("myContent.swf", "chart_views_div", "300", "120", "9.0.0");
});
发布于 2010-09-06 18:50:12
Am图表仍使用swfobject 1.5
Swfobject 2.x提供了更多的IMHO amcharts应该更新以使用新版本。
2.x有createswf,在这种情况下应该使用它
https://stackoverflow.com/questions/3187410
复制相似问题