0 0

open flash chart js调用 问题,为什么一直说tmp.load is not a function0

错误提示:

tmp.load is not a function
      tmp.load(JSON.stringify(data));

部分源代码如下:

script type="text/javascript" src="json/json2.js"></script>
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
swfobject.embedSWF("open-flash-chart.swf", "my_chart", "350", "200", "9.0.0");
</script>
    
<script type="text/javascript">

function ofc_ready()
{
alert('ofc_ready');
}

function open_flash_chart_data()
{
alert( 'reading data' );
return JSON.stringify(data);
}

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

var data = {省略。。。。};

</script>
    <script type="text/javascript">
    function go(){
     tmp = findSWF("my_chart");
      tmp.load(JSON.stringify(data));
    }
    </script>
<title>ofc</title>
</head><body>

<div id = "my_chart"></div>

<input type = "button" onclick="go()" value="go"/>
2013年4月25日 21:38

1个答案 按时间排序 按投票排序

0 0

送你个dmeo:

<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ include file="/common/taglibs.jsp"%>
<html>
<head>
<link href="common/common.css" type="text/css" rel="stylesheet">
<script src="common/common.js" type="text/javascript"></script>
<script type="text/javascript" src="common/popcalendar.js"></script>
<script type="text/javascript" src="openflash/swfobject2.js"></script>
<script type="text/javascript" src="js/json/json2.js"></script>
</head>
<body>
<div id="rightlayout" style="width: 800px">
<div style="text-align: left;color:red"><html:errors /></div>
<html:form	action="/Chart">
	<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse;border-color:#AAAAAA">
	<tr><td>
	<table border="0" align="center" background="images/query-inner-bg.jpg" cellpadding="0" cellspacing="0" height="120">
		<tr><td height="31" width="781" background="images/query-top-bg.jpg" style="font-size: 14px;color: white;">&nbsp;查询</td></tr>
		<tr><td>
			<table border="0" width="95%" align="center">
				<tr>
					<td>开始日期:</td><td><html:text property="qStartTime" size="20" styleClass="textbox" errorStyleClass="textbox_err"></html:text><a href onclick="popUpCalendar(this, document.forms[0].qStartTime, 'yyyy-mm-dd',-1,-1,false);return false"><img src="images/calendar.gif" border="0"></a></td>
					<td>结束日期:</td><td><html:text property="qEndTime" size="20" styleClass="textbox" errorStyleClass="textbox_err"></html:text><a href onclick="popUpCalendar(this, document.forms[0].qEndTime, 'yyyy-mm-dd',-1,-1,false);return false"><img src="images/calendar.gif" border="0"></a></td>
				</tr>
				<tr>
					<td colspan="6" align="right">
						<input type="button" name="query" class="button" value="查询" onclick="submitFrm(this.form,'<c:url value="Chart.do"/>')">
						<input type="button" name="begin" class="button" value="开始" onclick="startDrawLine()">
						<input type="button" name="end" class="button" value="暂停" onclick="stopDrawLine()">
					</td>
				</tr>
			</table>
		</td></tr>
	</table>
	</td></tr></table>
</html:form>
</div>
<div id="ofc">
</div>

	
<script type="text/javascript">
	swfobject.embedSWF(
         "openflash/open-flash-chart2.swf", "ofc",
         "800", "300", "9.0.0", "expressInstall.swf"
    );
</script>

<script type="text/javascript">
	var chartJson=${chartJson};
	
	var iIntervalId=null; //记录setInterval()方法创建的时间间隔id
	var count=1;	//计数
	var xSteps=5;   //x轴的步长
	var iMax=chartJson.max;	//设置最大值
	var sUnit=chartJson.unit; //设置单位
	var yMax=iMax*1.2;	//设置y轴最大值
	var initSize=50;
	
	function open_flash_chart_data()
	{
	    return JSON.stringify(data);
	}
	
	function findSWF(movieName) {
	  if (navigator.appName.indexOf("Microsoft")!= -1) {
	    return window[movieName];
	  } else {
	    return document[movieName];
	  }
	}
	
	//定义初始化y值,显示50个
	var initYValue=new Array(initSize);
	var initLabels=new Array(initSize);
	for(var i=0;i<initSize;i++){
		initYValue[i]=chartJson.yValues[i];
		initLabels[i]=chartJson.xValues[i];
	}

	//初始化的json数据
	var data={
			 "title":{
			    "text":"中石油",
			    "style":"{font-size: 15px;}"
			  },
			
			  "y_legend":{
			    "text":"Only English",
			    "style":"{font-size: 12px; color:#FF6600;}"
			  },
			  
			  "x_legend": { 
			  	"text": "时间点", "style": "{font-size: 16px; color: #736AFF}" 
			  },
			  
			  "elements":[
			    {
			      "type":      "line",
			      "colour":    "#00ae9d",
			      "text":      "Page views",
			      "width":     2,
			      "font-size": 10,
			      "dot-size":  6,
			      "values" :   initYValue
			    }
			  ],
			  
			  "x_axis":{
			    "steps": xSteps,
			    "labels": 
			    	{
				    	"colour":"#CC0000", //设置颜色
				    	"labels":initLabels
			    	}
			
			  },
			  "y_axis":{
			  	"offset": false,
			  	"stroke": 1,
			  	"colour":"#9ABD2E",
			  	"grid-colour":"#DAD5E0",
			  	"min":0,
			  	"max":yMax,
			  	"steps":110,
			  	"labels": {"colour": "#CC0000" }		
			  },
			  "bg_colour": "#CCFF99" //设置图形背景色
	}
		
	function drawLine(){
		var xLabel=new Array; 
		var yValue=new Array;
		
		if(initSize+xSteps*count>iMax){	//对超出最大值的处理
			clearInterval(iIntervalId);	//当达到最大值时,取消时间间隔
			document.getElementsByName("begin")[0].setAttribute("onclick",function(){});
			document.getElementsByName("end")[0].setAttribute("onclick",function(){});
			for(var j=xSteps*count;j<iMax;j++){
				yValue.push(chartJson.yValues[j]);
				xLabel.push(chartJson.xValues[j]);
			}
		}else{
			for(var j=xSteps*count;j<initSize+xSteps*count;j++){
				yValue.push(chartJson.yValues[j]);
				xLabel.push(chartJson.xValues[j]);
			}
		}
		
		//剩余的json数据(只需改变原数据data的y轴的值和x轴的标签值labels,然后赋值给leftData)
		data.elements[0].values=yValue;
		data.x_axis.labels.labels=xLabel;
		var leftData=data;
		
		var tmp = findSWF("ofc");
    	tmp.load(JSON.stringify(leftData));
		count++; 
 	}
 	function startDrawLine(){
 		if(iIntervalId!=null){
 	 		clearInterval(iIntervalId);	
 	 	}
 		iIntervalId=setInterval(drawLine,1000);	//每隔1s钟调用函数
 	}
 	
 	function stopDrawLine(){
 	 	if(iIntervalId!=null){
 	 		clearInterval(iIntervalId);
 	 	}
		//setTimeout(drawLine,0);	//立刻调用一次drawLine函数后暂停
		//这里应该调用1个空函数
		setTimeout(function(){},0);
 	}

 	
</script>
</body></html>

+参考连接:
http://hi.baidu.com/javagril/item/2ca42e3501554382c2cf29d6

2013年4月25日 22:10

相关推荐

    控制台报错object is not a function的解决方法

    打开控制台发现报错:object is not a function。 感觉很奇怪,这块的功能最新没动过怎么会突然出问题了呢?上线时主流浏览器都测试过了呀。 虽然奇怪,但是还的解决问题。看着代码发现一个radio对象的name属性和一...

    Javascript中封装window.open解决不兼容问题

    对window.open进行封装, 使其更好用, 且更兼容, 很多人说window.open不兼容,其实不是, 因为不能直接执行, 必须通过用户手动触发才行;看代码: 代码如下 var openWindow = function(url, options) { var str = ""; ...

    open flash chart api

    Open Flash Chart API 是一款强大的开源图表库,它使用Flash技术来生成高质量、交互式的图表。在Web开发中,数据可视化是至关重要的,Open Flash Chart API 提供了丰富的功能,使得开发者能够轻松创建各种类型的图表...

    Open Flash Chart 教程

    Open Flash Chart 是一款开源的Flash图表库,它允许开发者通过简单的JavaScript API生成各种美观的、交互式的图表。这个教程可能是为了帮助用户理解如何利用Open Flash Chart来创建动态和定制化的图表,适合Web...

    open flash chart库

    **Open Flash Chart库详解** Open Flash Chart是一款强大的开源图表库,专为PHP开发者设计,用于创建各种美观且交互性强的数据可视化图表。它以其出色的视觉效果和丰富的自定义选项,在Web应用中广泛使用,尤其适用...

    Open Flash Chart所需文件

    Open Flash Chart是一款强大的开源Flash图表库,用于在Web应用程序中创建高质量、互动的图表。它提供了丰富的自定义选项,能够生成各种类型的图表,包括柱状图、饼图、线点图等,使得数据可视化变得更加简单易行。在...

    open-flash-chart-1[1].9.7.zip_flash chart tr_open flash chart

    8. **js**:JavaScript目录,可能包含了JavaScript版本的Open Flash Chart库,用于前端开发,通过Ajax等方式与服务器端数据进行交互。 Open Flash Chart的强大之处在于其灵活性和可扩展性。开发者可以通过调整颜色...

    开源flash图表--open flash chart

    总的来说,Open Flash Chart是一个强大且灵活的图表库,它为Web开发人员提供了一种方便的方式来创建美观且功能丰富的图表,尤其适合那些需要在网页上实时展示数据的应用场景。通过深入了解和实践,开发者能够熟练地...

    完整的open flash chart 。

    Open Flash Chart是一款强大的开源图表库,它使用Flash技术来创建美观、交互式的图表。这款工具在Web开发中尤其受欢迎,因为它允许开发者轻松地为网站添加数据可视化功能,而无需深入学习复杂的图形编程。以下是关于...

    flash图表组件Open Flash Chart 2.0+(asp/php)自动提取示例+使用说明

    文件由官方提供的open-flash-chart-2-Lug-Wyrm-Charmer.zip原版文件,仅修改支持透明的flash的swfobject.js,原文件也在压缩包内。 增加方便调用示例文件的index.php和index.asp,其它文件未做任何改动。 php环境请...

    Open Flash Chart例子、中文版PDF说明文档、参数表

    Open Flash Chart(简称OFC),是一个开源的flash报表组件。我们不仅可以免费使用,而且还可以修改源码,来达到我们想要的效果。客户端在得到数据以后,在Flash Player中渲染出报表图。  附带PDF说明文档,是中文版...

    Open Flash Chart 报表插件相关

    在ASP.NET环境中,可以利用JavaScript或者服务器端代码来生成JSON数据,然后通过AJAX调用传递给Open Flash Chart。以下是一般步骤: 1. **生成数据**:在ASP.NET后台,你可以使用C#或VB.NET处理业务逻辑,将数据库...

    open-flash-chart

    "Open Flash Chart"是一个开源的图表绘制库,主要用于在网页上生成高质量的图表。它使用Flash技术,通过JavaScript与服务器端的数据进行交互,为用户提供了一种简单、灵活的方式来创建动态和交互式的图表。这个库...

    Open Flash Chart Sample

    这篇博文链接提供了一个关于Open Flash Chart的示例,虽然描述部分为空,但我们可以从标题和标签中推测出本文可能涉及到如何使用Open Flash Chart的源码以及它作为工具在实际项目中的应用。 首先,让我们了解一下...

    最新版Open Flash Chart

    `js-ofc-library`目录包含了JavaScript库,这使得在网页中与Open Flash Chart进行交互变得简单。通过JavaScript,开发者可以动态更新图表数据,实现交互式图表。该库提供了一系列API函数,用于创建图表对象、设置...

    Open Flash Chart的应用(java),就是很炫的报表了

    第一步:下载Open Flash Chart工具最新软件包,将其中open-flash-chart.swf放到网站根目录,swfobject.js放到js目录下。如果是java项目,则还需将jofc2-1.0-0.jar和xstream-1.3.1.jar两个jar包加入项目。(xstream-...

    open flash chart 实例1

    - Open Flash Chart是一个基于ActionScript 2.0开发的库,利用Flash技术将数据转换为交互式的图表。 - 它支持多种图表类型,如柱状图、饼图、线图、散点图等,适用于数据分析和展示。 - 图表的生成过程通常包括:...

    Open Flash Chart2 相关资料

    由于最近公司项目中要用到图表,看到Open Flash Chart这个还不错,开源的,而且官方还附带了很多Demo,最重要的是支持很多的语言,只是这个东西一直很久没有更新,在网上找了很多资料,找到了Open Flash Chart社区...

    open flash chart (web 实例)

    **Open Flash Chart 入门与应用详解** Open Flash Chart 是一款免费的Web图表组件,它使用Flash技术来创建丰富的、动态的以及交互式的图表。在Web应用程序中,数据可视化是至关重要的,Open Flash Chart 提供了一种...

    rails open_flash_chart

    "Rails Open Flash Chart" 是一个基于Ruby on Rails框架的库,用于在Web应用程序中生成交互式的Flash图表。这个库允许开发者轻松地创建各种统计图表,如折线图、柱状图、饼图等,以便更好地可视化数据。由于Flash在...

Global site tag (gtag.js) - Google Analytics