`
dahui
  • 浏览: 50156 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

WRT 第四、五天都是debug。第六天,收获prototype。

阅读更多

前两天都是在debug,调整布局。最后发现是WRT中的时间函数与桌面浏览器的支持有差别。还有就是定时器执行的函数一定要尽量优化减少其工作量,否则会严重影响浏览器反应速度。

在写工作总结的时候,才意识到从AccuWidget改来的这个小widget “浪费”了自己很多时间。因为根本没用到什么好玩的东西。把自己的一些想法实践一下, 最重要的是想把prototype用起来。把AccuWidget里的js改成面向对象的。
做法、问题:
1)定义数据模型。
var Movie = Class.create();
Movie.prototype = {   
    initialize : function(title, image) {
        this.title = title;
        this.image = image;
        this.director = "";
        this.performer = "";
        this.briefDescription = "";
        this.otherInfo = "";
    }
}

2)定义MovieEngine.  访问网络获取rss data, 操纵 html dom.
var MovieEngine  = Class.create();
MovieEngine.prototype = {
    initialize: function(dataUrl){
        this.url = dataUrl;
        var movieList = [];
    },
    … …
}

3)loadXMLDoc是通过prototype定义的MovieEngine 类中的一个方法。中使用XMLHttpRequest,一种是使用prototyp提供的,这种可以工作,一种是使用wrt推荐的,这种方式有问题。不知道是不是在类中定义的缘故。没时间搞明白了。
loadXMLDoc : function () {
    //this.loadXMLDoc.caller.toString();
    if (IsUsePrototypeAjaxRequest) {
        var myAjax = new Ajax.Request(
                            this.url,
                            {method: 'get', onComplete: this.processStateChange}
                        );
    }else {
        var req = this.createXMLHttpRequest();
        req.onreadystatechange = this.processStateChange(req);
        req.open("GET", this.url, true);       
        req.send(null);           
    }
},   

4)在类的方法中调用类中的方法,似乎都需要使用this. 。

5)在XMLHttpRequest的回调匿名方法中不能调用类中定义的方法。所以只要把回调函数使用的方法也放到回调函数中了。
6)其实如果回调函数使用的函数不被其它函数使用,这种javascript的闭包概念似乎还提供了一种封装。如果有函数需要共享,就不知道怎么办好了。

使用了prototype感觉确实很好。可以使用OO的想法去写javascript了。

关于开发Nokia Widget的大致步骤:
1)建立aptana开发环境,使用prototype。
2)根据需求把xhtml页面定义出大致的功能区域,赋予合适的div ID。
3)建立数据模型/或者具有行为的entity。取决于应用的复杂程度。
4)页面流转控制的类、访问网络的类。
5)真机上调试用的div也是必须的。
7) 还需要一个build系统。这个build需要区分是debug for firefox 还是release for nokia mobile。 其实WEB项目也很需要build系统做调整进行针对生产环境的优化。
8)别想做复杂的应用,因为widget现在还不能访问本地存储。把用户数据都放到server意味着用户需要注册,为了使用一个widget,用户愿意注册么?

把获取数据和简单显示的部分做完了。中文显示有问题。还是不能够在回调函数中调用,与回调函数同级的其它函数,所以必须把对数据的处理写在回调函数的闭包里。以后注意一下别人的实现吧。

关于等待页面。当提示用户选择SAP时,httprequest state是1。当建立连接后是3.  3和4之间是浏览器读取数据的时间。所以,如果显示进度条放在3之后比较好。state==4处理完数据后,再取消滚动条。

页面美化的工作很多。一个团队应该是各种特长队员的集合,彼此用自己的特长工作,高效而轻松。今天算是实习了javascript/prototype的面向对象编程。

参见 aTangMovie.wgz

分享到:
评论

相关推荐

    Open WRT路由器开发说明

    连接 Open WRT 路由器是开发者的第一步。开发者可以使用串口线或网络连接,连接到 Open WRT 路由器。连接路由器后,开发者可以使用 Open WRT 的管理界面,配置路由器的设置和参数。 六、 备份分区 备份分区是备份 ...

    WRT3200ACM.zip

    标题"WRT3200ACM.zip"暗示了这是一个与Linksys WRT3200ACM路由器相关的软件更新或固件升级包。WRT3200ACM是一款高性能的无线路由器,以其开放源码的支持和强大的硬件配置受到DIY网络爱好者和高级用户的青睐。该...

    WRT54G2 V1 DD-WRT精简版固件

    WRT54G2 V1是Cisco Linksys的一款无线路由器,而DD-WRT则是一个开源的第三方路由器固件项目,它提供了比原厂固件更多的功能和定制选项。这里的“精简版”可能意味着这个固件针对资源有限的设备进行了优化,去除了...

    WRT400N_原厂固件

    在【描述】中提到的"给那些想刷回原厂的用一用",暗示了用户可能已经尝试过第三方固件(比如OpenWRT或DD-WRT),这些固件提供了更高级的自定义选项和优化,但可能会导致设备稳定性下降或出现不兼容的问题。...

    WRT54G_WRT54GL.bin

    sike\\\思科思科WRT54G_WRT54GL.bin

    wrt54g v4固定64m内存的cfe

    CFE是路由器启动时首先加载的微代码,负责初始化硬件和加载操作系统(通常是Linux的OpenWrt或其他第三方固件)。 【压缩包子文件的文件名称列表】:CFE64m.bin,这个文件是升级过程中至关重要的部分。它是更新后的...

    wrt54g刷机包

    1. **WRT54G系列路由器**:Linksys WRT54G系列是Linksys推出的一款广受欢迎的家庭级无线宽带路由器,以其可定制性和开放源码固件DD-WRT的支持而著名。它支持多种版本,如v5、v6、v7和v8.2,这些版本在硬件和功能上...

    WRT54G原厂中文固件(V1-V4)

    对于喜欢自定义路由器功能的用户,WRT54G系列还支持OpenWrt和DD-WRT等第三方固件,这些固件提供了更丰富的定制选项,例如端口转发、虚拟服务器、带宽监控等。 总的来说,【WRT54G原厂中文固件(V1-V4)】对于拥有该...

    wrt54g v7 刷机固件大全

    它以其开源固件的支持而闻名,特别是OpenWrt和DD-WRT等第三方固件,使得用户可以自定义和增强路由器的功能。 【v7版本】:WRT54G的v7版本是指硬件上的特定迭代,每个版本可能在硬件规格、性能或兼容性上有所不同。...

    DD-WRT设置说明

    DD-WRT是一种基于Linux的第三方固件,主要用于路由器等网络设备,可以极大地扩展路由器的功能并提供高级的网络管理选项。本文将详细介绍如何安装和配置DD-WRT固件,以及如何进行基本的网络设置。 #### 二、登录DD-...

    LINKSYS WRT54G / WRT54GL 官方最新2009年中文固件 v4.30.13中文语言包

    3. **版本号v4.30.13**:版本号表明固件的迭代状态,v4.30.13意味着它是第四大主版本,第30个小版本,第13次修订。每个数字的增加通常代表不同程度的改动和改进。 4. **中文语言包**:这个固件版本特别之处在于它...

    linksys wrt300n v1固件

    【linksys wrt300n v1 固件】是Linksys公司为WRT300N v1无线路由器推出的软件更新版本,主要用于优化设备性能、修复已知问题以及增强网络安全性。固件是控制路由器硬件运行的核心程序,它包含了一系列指令,使路由器...

    Linksys wrt54gs v3固件

    **Linksys WRT54GS V3 固件详解** Linksys WRT54GS v3是一款经典的无线路由器,以其高性能、稳定性和可定制性深受技术爱好者和网络管理员的青睐。固件是控制路由器硬件运行的软件,它包含了路由器的所有功能和设置...

    wrt54g TFTP中文版

    1. **Linksys WRT54G**:这是一款由Linksys公司生产的经典无线路由器,因其开源固件的支持(如DD-WRT、OpenWRT等)而受到DIY爱好者的喜爱,可以进行各种自定义配置和性能提升。 2. **TFTP**:TFTP是一种简单且不...

    linksys wrt54g v7 7.0.0.8版固件

    这款路由器以其可自定义性著称,用户可以安装第三方固件如DD-WRT、OpenWrt等,以扩展其功能和提升性能。 标签中的“linksys wrt54g v7 7.0.0.8 版 固件”进一步强调了固件的型号和版本信息。对于这款路由器,固件...

    WRT54G V5升级32m接线图

    WRT54G是Linksys推出的一款广受欢迎的无线宽带路由器,V5版本则表示其硬件版本为第五代。升级32m意味着将原本的内存(通常为4MB)扩展到32MB,以提升路由器的性能,特别是处理复杂网络任务或运行第三方固件时。 ...

    WRT54GL_4.30.13.016

    【标题】"WRT54GL_4.30.13.016" 提供的是路由器固件更新 这个标题" WRT54GL_4.30.13.016 "暗示了...对于技术熟练的用户,WRT54GL的开放源代码特性还允许进一步定制和优化固件,例如使用第三方固件如DD-WRT或OpenWrt。

    Linksys WRT1900AC 刷砖(DD-WRT)后的TTL线刷详解3.pdf

    根据给定文件的内容,我们将详细探讨Linksys WRT1900AC路由器刷写DD-WRT固件之后,如何使用TTL线进行重新刷写固件的过程。这个过程通常被称为“刷砖”,因为如果操作不当,可能会导致路由器无法启动,即变“砖”。...

    WRT54G原厂中文固件

    4. **性能优化**:厂商针对硬件特性和用户需求进行优化,确保路由器在各种场景下都能表现出良好的性能。 5. **易用性增强**:原厂固件通常包含了一些预设的设置,如QoS(服务质量)管理、家长控制等,让用户可以...

    WRT54G OP固件

    WRT54G OP固件

Global site tag (gtag.js) - Google Analytics