• ----:)欢迎访问源码网(:----
    • 首页
    • 博客
    • 学院
    • 下载
    • 论坛
    • 影视
    • 发布源码
    • RSS
    • ITPig
    • 笑话网
    • 百家姓
    • 繁體中文

源码网 - 中国第一源码门户
选择镜像:网通镜像 - 电信主站
  • 首 页
  • 新闻动态
  • 网站运营
  • 网页制作
  • WEB开发
  • 编程开发
  • 图像媒体
  • 操作系统
  • 数据库
  • 服务器
热门搜索 优化 SEO 故事 cms IIS7 MySQL 个人 AdSense 主题推广 | 文章搜索: 高级搜索
会员登录/控制面版您的位置: 学院首页 >> WEB开发 >> Ajax >> 详细内容
 

推荐文章

  • ajax概述
 
 

热点文章

  • 让您的小站融合ajax,十分钟就OK【原创教程】
  • 用AJAX编写一个简单的相册
  • CMS中深入融合ajax技术增强用户体验
  • 让你的博客轻松实现代码高亮显示
  • 网页上体验台式机程序 AJAX赋予软件新面孔
  • 什么是AJAX?
  • AJAX与微软的新方案
  • AJAX催促软件由桌面软件向在线软件的演化
  • AJAX也有安全隐患 谈谈AJAX的安全性
  • 新互联网软件Ajax集搜索商务一体 威胁微软
  • Ajax兴起, 传统Web框架将走向何方?
  • AJAX开发简略 (第一部分)
 
 

相关文章

  • Ajax缓存解决办法
  • PHP解决ajax中文乱码resopnseText中文乱码xmlhttp中文..
  • AJAX、AJAX实例及AJAX源代码(asp)
  • ajax基本原理实例
  • Google AJAX Language API开发者参考
  • 用 PHPRPC 实现 Ajax 级联下拉菜单
  • 不是我的错,就是ajax的Bug
  • ASP.NET AJAX中的非同步PageMethod调用
  • 在 Zend Framework 中使用 Jquery 的 ajax 功能
  • 什么是AJAX?
  • ajax概述
  • AJAX也有安全隐患 谈谈AJAX的安全性
 
 

百度搜索

 
 

ajax实时控制flash

  • 阅览次数:
  • 文章来源: CodePub整理
  • 原文作者:
  • 整理日期: 2008-09-18
  • 发表评论
  • 字体大小:
  • 小
  • 中
  • 大

  最近有个客户提出这样一个需求,由于该公司是一个仪表公司,要求能够在web上实时显示 仪表的状态,主要是一个仪表盘,实时的更新其刻度。由于要实时,所以必须设置定时器,采用ajax获取数据库的读数,然后实时在仪表盘上显示出来。

    初步考虑是用flash来显示仪表盘,每一帧对应仪表的每个刻度,因为flash是在网页加载的时候就一次加载进来了,这样我只需要根据数据库的读数,用js控制flash的frame就可以了,这样做的好处是无刷新效果。下面贴出在往网上找到的js控制flash的主要函数:

控制 Flash Player 的 JavaScript :  
播放动画:Play()  
例:(网页中的 Flash id).Play();  
停止动画:StopPlay()  
动画是否正在播放:IsPlaying()  
跳转到某帧:GotoFrame(frame_number)  
获取动画总帧数:TotalFrames()  
回传当前动画所在帧数:CurrentFrame()  
使动画返回第一帧:Rewind()  
放大指定区域:SetZoomRect(left,top,right,buttom)  
改变动画大小:Zoom(percent)  
使动画在 x,y 方向上平移:Pan(x_position,y_position,unit)  
返回动画被载入的百分比:PercentLoaded()  
加载动画:LoadMovie(level_number,path)  
例:(网页中的 Flash id).LoadMovie(0, "***/***.swf");  
movie_clip 跳转到指定帧数:TGotoFrame(movie_clip,frame_number)  
例:(网页中的 Flash id).TGotoFrame("_root.实例名.次实例名",帧数);  
movie_clip 跳转到指定标签:TGotoLabel(movie_clip,label_name)  
例:(网页中的 Flash id).TGotoLabel("_root.实例名.次实例名","标签名");  
回传 movie_clip 当前帧:TCurrentFrame(movie_clip)  
回传 movie_clip 当前标签:TCurrentLabel(movie_clip)  
播放 movie_clip:TPlay(movie_clip)  
停止 movie_clip 的播放:TStopPlay(movie_clip)  
获取变量:GetVariable(variable_name)  
变量赋值:SetVariable(variable_name,value)  
call 指定帧上的 action:TCallFrame(movie_clip,frame_number)  
call 指定标签上的 action:TCallLabel(movie_clip,label)  
获取 movie_clip 的指定属性:TGetProperty(movie_clip,property)  
设置 movie_clip 的指定属性:TSetProperty(movie_clip,property,number)  

实现代码大概是这样的:

aspx文件:

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">

    <title>Untitled Page</title>
    <script type="text/javascript" src="swfobject.js"></script>
    <script language="javascript" type="text/javascript">
    function GetTime()
    {
       var i = Default2.GetTime().value;//ajax获取数据库内容,用以改变flash
       var vrt=document.getElementById("txt");
       vrt.value=i;
       document.getElementById("mFlash").gotoframe(i);//转到指定帧
     }
    </script>
   </head>
<body onload="setInterval(’GetTime()’,1000);"><!--一秒执行该函数一次-->
   <form runat="server" id="form1">
   <input type="text" id="txt" />
      <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="mFlash" WIDTH="300" HEIGHT="150">  
<param name="quality" value="high"/>  
<param name="movie" value="ww.swf"/>  
</object>  
   </form>
</body>
</html>

cs文件

public partial class Default2 : System.Web.UI.Page [Page]
{
    public string conn = ConfigurationManager.ConnectionStrings["fdcwhConnectionString4"].ToString();
    protected void Page_Load(object sender, EventArgs e)
    {
        Ajax.Utility.RegisterTypeForAjax(typeof(Default2));
    }

    [Ajax.AjaxMethod()]
    public int GetTime()
    {
        //return DateTime.Now.ToString();
       SqlConnection sqlcon = new SqlConnection(conn);
       sqlcon.Open();
        Random randObj = new Random();
        int start = 1;//随机数可取该下界值   
       int end = 10;//随机数不能取该上界值  
        int randomid = randObj.Next(1, 100);
        SqlCommand sqlcmd = new SqlCommand("select id from clockid where id= ’"+randomid+"’", sqlcon);
        int i = Convert.ToInt32(sqlcmd.ExecuteScalar());
        return i;
        sqlcon.Close();

    }

}

ps:用到了ajax.dll文件,因此在web.config中在<httpHandlers></httpHandlers>要加上 <add verb="POST,GET" path="Ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax"/>

上一篇:DIV+CSS技术入门学习
下一篇:JavaScript中For循环
  • 网友评论:
  • 查看所有评论
  • 我要发表评论
您的网名:
留言主题:
你要发表的内容:

 

关于本站 | 广告联系 | 版权声明 | 网站地图 | 发布软件 | 帮助中心 | 源码论坛

Copyright © 2005-2007 CodePub.Com  程序支持:木翼  滇ICP备05005971号