kenlistian

勤学多思

  IT博客 :: 首页 :: 新随笔 ::  :: 聚合  :: 管理 ::
  412 随笔 :: 0 文章 :: 23 评论 :: 0 Trackbacks

#

Flash Lite是放在手机设备上的一个swf播放软件。描述如下:

Macromedia Flash Lite 是适用于移动电话的Macromedia Flash Player
的一个版本。Flash Lite 当前有两个版本:
  Flash Lite 1.0
  Flash Lite 1.1
   
Flash Lite 包含以下功能:

。核心渲染引擎 该渲染引擎处理所有的矢量和位图渲染。

。ActionScript解释器
   Flash Lite 只支持 Flash Player 4 中使用的ActionScript语言版本,
包括许多移动设备专用的命令,如从设备上获取时间和日期信息。
Flash Player 4 ActionScript与具有特定于 Flash Lite 属性命令的混合体
统称为 Flash Lite 1.x ActionScript。

。文本和字体 Flash Lite 支持静态、动态和输入文本字段。
   可以使用设备中可用的字体或将字体数据嵌入到已发布的 SWF 文件中。

。声音 Flash Lite 1.0 和 Flash Lite 1.1 都支持设备音频格式(如 MIDI 或 MFi)。
   Flash Lite 1.1 还支持标准 Flash 音频

。网络连接 Flash Lite 1.1 支持加载外部数据和 SWF 文件的功能,
   以及获取连接和HTTP请求状态信息的命令和属性。

设备和平台集成 Flash Lite 提供对多个系统功能和命令的访问,
如初始化电话呼叫和短消息服务 (SMS) 消息、获取平台功能信息
和使用设备的标准输入对话框获取用户输入的功能。

******
版本为1.1的播放器描述 

独立的 Flash Lite 1.1 播放器是这样一个应用程序:

它允许您打开和查看位于您设备内存卡中的 SWF 文件、
在设备的移动 Web 浏览器中浏览到的 SWF 文件或者通过
Bluetooth 无线技术或红外线连接在设备的消息收件箱中
接收到的 SWF 文件。


以下平台和设备的独立的播放器在全球范围内可用:
(现在应该支持的更多)

Series 60 平台:

Nokia 3600、3620、3650、3660、6260、6600、6620、6630、6670、6680、
6681、7610、N-Gage、N-Gage QD
Sendo X
Siemens SX1
UIQ 平台:

Sony Ericsson P900、P910  


******************
flash lite   支持以下内容类型:

无非就是用flash lite 再包了一层,如同虚拟机,在flash lite上
编写swf格式文件通过flash lite去和应用层,底层交互。

实际上,能实际用到的也就是一两样。当然看如何开发功用上了。

通讯簿
用 Flash Lite 允许用户将 SWF 文件与用户设备的通讯簿应用程序中的条目相关联。
NTT DoCoMo 和 Vodafone(仅限日本)
 
警报
用 Flash Lite 允许用户选择一个 SWF 文件作为设备警报进行播放。
KDDI 和 Vodafone(仅限日本)
 
浏览器
用 Flash Lite 可呈现嵌入在移动网页中的 Flash 内容,在设备的 Web 浏览器中查看。
NTT DoCoMo、KDDI 和 Vodafone(仅限日本)
 
通话历史记录
用 Flash Lite 显示与用户通讯簿中每个条目关联的图像或动画,及用户的姓名和电话号码。
KDDI(仅限 Casio 电话)
 
通话屏幕
用 Flash Lite 可在用户接听或拨打电话时显示动画。
NTT DoCoMo 和 KDDI(仅限日本)
 
Chaku Flash
用 Flash Lite 允许用户选择作为呼入电话的铃声而播放的 SWF 文件。
KDDI(仅限日本)
 
Data Box
用 Flash Lite 可以在设备的 Data Box 应用程序中呈现 Flash 内容,用户即可管理和预览设备上的多媒体文件。
NTT DoCoMo、KDDI 和 Vodafone(仅限日本)
 
Data Folder
用 Flash Lite 可以在设备的 Data Folder 应用程序中呈现 Flash 内容,用户即可管理和预览设备上的多媒体文件。
KDDI(仅限日本)
 
图标菜单
 用 Flash Lite 允许用户选择设备的启动应用程序的自定义图标菜单。
 KDDI(仅限 Casio 电话)
 
Image Viewer
 用 Image Viewer 应用程序,该应用程序允许用户管理和预览设备上的多媒体文件,包括 SWF 文件。
 NTT DoCoMo(仅限日本)
 
呼入电话
 用 Flash Lite 可以在用户接听电话时显示动画。
 NTT DoCoMo、KDDI 和 Vodafone(仅限日本)
 
Mailer
 用 Flash Lite 可在用户发送或接收电子邮件时显示动画。
 Vodafone(仅限日本)
 
多媒体
 用 Flash Lite 可以预览 SWF 文件(以及其它多媒体格式)。
 KDDI(仅限日本)
 
My Picture
 用 My Picture 应用程序,该应用程序允许用户管理和预览设备上的 SWF
文件以及其它图像格式。
 NTT DoCoMo(仅限日本)
 
OpenEMIRO
 当设备从待机模式返回时显示 Flash Lite 内容。这与其它设备上的"开机屏幕"内容类型相似。
 KDDI(仅限 Casio 设备)
 
屏幕保护程序
 用 Flash Lite 可以显示设备的屏幕保护程序。
 KDDI 和 Vodafone(仅限日本)
 
SMIL 播放器
 用Flash Lite 可以预览 SWF 文件(以及其它多媒体格式)。
 KDDI(仅限日本)
 
独立播放器
 Flash Lite 可以作为一个独立的应用程序,用户可以启动和查看位于设备上或用户在消息收件箱中接收的任意 SWF 文件。
 对选择 Symbian Series 60 和 UIQ 设备全局可用。
 
待机屏幕
 使用 Flash Lite 可以显示设备的待机屏幕(或壁纸屏幕)。
 NTT DoCoMo 和 KDDI(仅限日本)
 
Sub LCD
 使用 Flash Lite 可以在某些翻盖手机的外部或辅助屏幕上显示内容。
 KDDI(仅限日本)
 
开机屏幕
 使用 Flash Lite 可在开机时显示动画。
 NTT DoCoMo(仅限日本)
 
 

posted @ 2008-05-09 10:50 kenlistian 阅读(503) | 评论 (0)编辑 收藏

   现在郁闷,自己的iis老是死掉,不是报500错误,就是登陆不上,微软的东西
的确不错,但是为啥老是有点小问题,连个widnowlivewrite也打不开,连页面弹不出。
功能不错,但是在应用方面,总是比不上那些短小精悍的一些软件。
   比如现在我写这个博客,就是在editplus下开个页面操作,虽然不能一点就发布的功能,
但是,也多多少少的满足了简单操作的要求,把自己所写粘贴上去,发布下就行了。

   在自己机子上调试web程序,大可不必非要装iis,装一个第三方的web服务软件,能满足
支持asp,javascript功能即可。那么netbox就足以满足要求。

 netbox   这个在宣传上已经说达到商用级别了,就是说可以取代iis服务而应用于商业化。
                至于是否真正支持商业化,其性能在效率上,稳定性上还需要更多实用来考虑。
                在我自己机子上调试用,装个netbox比iis则比简捷得多。
                 就是不知道是否支持asp。net。
 转一个对netbox的详细描述吧

NetBox 是一个使用脚本语言进行应用软件开发与发布的开发环境和运行平台,
它是除了apache和微软的IIS和PWS之外的第四个可以运行ASP的应用服务器。

 NetBox 是一个全新概念的开发平台,它提供了业界最快速的用于开发 Internet
 商业应用的开发和编译工具。
 NetBox 支持包括 JavaScript、VBScript、Perl 等目前应用最为广泛的脚本语言
 来构建功能强大和性能稳定的应用服务器、网络服务器以及 HTML-Based 网络多
 媒体桌面应用。
 
 NetBox 支持目前最为流行的XML 和 Web Service 工业标准和 ASP、COM、.NET 等
 流行标准,NetBox 对第三方数据库的完美支持使您新构建的商务应用可以容易的
 将已有的应用系统整合进来,从而充分利用现有的 IT 资源,大大的节约投资。
 
  NetBox 提供的 SSL、TLS 安全协议、RSA、DES 等加密算法和独立于应用程序的
  虚拟机技术使您的数据得到最大限度的保护。NetBox 提供将应用部署到无线设
  备的能力。NetBox 提供将您的应用编译成独立可执行文件的能力,极大的加快
  运行速度和代码安全性。使用 NetBox 开发,大大提高了应用系统的可扩展性、
  稳定性和安全性。NetBox 的出现也首次让应用软件开发商能够如此快速和容易
  的构建完整的基于 Internet 强大应用。

 NetBox Development Platform 开发 Server Application 和 Desktop Application,
 编译Web应用成独立可执行文件:
 支持 JavaScript、VBScript、Perl 等脚本语言支持 XML 和 Web Service兼容 Active Server Pages
 支持 COM 和 .NET 组件  
  支持 SSL 3.0、TLS   内置 RSA、DES、3DES、SHA、MD5  
 提供可编程的安全虚拟机用于运行第三方程序   
  支持通过 ADO 和 ODBC 访问几乎所有的大型数据库
  支持系统硬件设备 RS232、RS485 等   
  支持基于 Microsoft、CISCO 和其他厂商的群集技术  
  兼容 Windows Script Components 并提供编译支持   
  支持 WAP、WML构建 Web Service 和 Internet 应用程序

 NetBox 提供一套完整的脚本语言开发环境,提供超轻量脚本引擎和极快的 Web Server,
   桌面应用对象轻松开发出基于 HTML 界面整合多种媒体的 XML 桌面应用。

  NetBox 提供 Microsoft IIS 5.0 兼容的 Active Server Pages 模块,不用修改代码直接
   将已经存在的使用 ASP 开发的应用程序移植到 NetBox 平台上来,也可以直接使用已经存
   在所有 COM 组件。通过修改一部分代码,用 NetBox 的高性能对象大大的提高运行速度。
  
   区别于 IIS,NetBox 在 ASP 中加入对 .NET 对象的直接支持,并且可以编译ASP引擎和
    代码到独立执行文件中。

 通过 ADO 和 ODBC,NetBox 开发的应用可以访问几乎所有的大型数据库和桌面数据库。
  通过对XML的集成,加强了和外部应用和数据的集成能力,新加入的对 SOAP、UDDI、WSDL,
   方便构建出下一代 Internet 应用程序。

 无论是开发简单的桌面应用,或是复杂的 Internet 应用,还是下一代的 Web Service 应用,
   你都可以从 NetBox 中得到巨大的帮助。

  NetBox 提供大量开发部件方便脚本应用的开发,提供开发与发布两种运行模式,保障代码安全,
   方便应用部署,并且提供了方便的调试手段以提高应用开发效率。

  适用范围

  1.对于 WEB 应用,可以迅速将已有的 iis+asp 的应用平滑移植到 NetBox 应用中,除极少数高级编程外,
     代码不需要任何修改,同时 NetBox 还提供大量扩展部件,使得 WEB 应用更加方便。
     2由于 NetBox 可以将全部代码最终发布成为应用程序,保护了开发人员的利益和代码的完整性。
     3,NetBox 还可以方便地编写更多的桌面应用、系统服务器应用、定制网络应用等等。

  运行环境要求

     最低要求只需要 Windows 98 或者 Windows NT + IE4 即可运行。
     而如果需要使用系统其他部件(比如 ado),则需要根据系统情况,如果系统本身未缺省安装,需要自行安装。
    下面列出的是经过测试的所有系统平台:
  Windows 98   
    Windows 98 SE   
    Windows ME   
    Windows NT+IE4   
    Windows 2000   
    Windows XP   
    Windows .NET Server


关于netbox的下载和使用说明:  http://www.netbox.cn:88/document/
 netbox下载:     http://www.netbox.cn:88/download/nbsetup.EXE

再摘抄下关于架构配置的方法:

 1.安装后,在要测试的网站(或者网页)的文件夹下建一个文件,扩展名为.box。
   复制下面代码,看懂后修改下.

    2.配置模板

  Dim httpd
  Shell.Service.RunService "NBWeb", "NetBox Web Server", "NetBox Http Server Sample"

  '---------------------- Service Event ---------------------
  Sub OnServiceStart()
        Set httpd = CreateObject("NetBox.HttpServer")
        If httpd.Create("", 80) = 0 Then
                     Set host = httpd.AddHost("", "\wwwroot")
                host.EnableScript = true
                host.AddDefault "index.htm"
              host.AddDefault "index.html"
               host.AddDefault "index.asp"
                 host.AddDefault "default.asp"
               host.AddDefault "default.htm"
               host.AddDefault "default.html"
               httpd.Start
           else
             Shell.Quit 0
           end if
  End Sub
 
   Sub OnServiceStop()
       httpd.Close
  End Sub

  Sub OnServicePause()
       httpd.Stop
  End Sub

  Sub OnServiceResume()
       httpd.Start
  End Sub

    上面中有一句是
        Set host = httpd.AddHost("", "\wwwroot"),

    它就是你的网站的文件夹,如果你的文件夹不是这个,改。
   
    80是端口,可改,访问时需打上端口号。

     index.htm是设置的默认首页的格式,可以调节顺序,
     如把asp文件放在前面。
     如你的网站的首页或者网页名字不是上面的几种,加。

  3.运行BOX文件,有对外IP也可直接对外发布网站或者网页了。



打包成exe方法:

 1. 建一个文件夹,在该文件夹下面放置.box配置文件,
        同一目录下放置你的整个网站的文件夹。
  
    2. 打开netbox deployment wizard(装好netbox后会在开始菜单里面有),
        在H:\wwwroot\homepage\下面建立了pages文件夹,用于放置我们做好的网页文件,
       在和pages同文件目录下面,放置该网页(网站)的配置文件"mypage.box",在启动中
       选择 "mypage.box",输出文件随便取一个名字。(本例中取homepage.exe)

   3. 按"build"就可以生成了一个exe文件了。

   4. 测试
            双击运行该可执行程序,直接在浏览器中输入
             http://localhost/查看。

   5. 以服务方式运行。
      
        因为这个例程是以服务方式创建的 Web 服务器,
            使用:myapp -install
             可安装为服务,
     
        如需要卸载服务,执行下面的命令:
                   myapp -remove

   

  
  

posted @ 2008-05-08 12:39 kenlistian 阅读(1027) | 评论 (1)编辑 收藏

 

 

1.flex是什么。http://www.wangchao.net.cn/bbsdetail_56449.html

Flex 是什么? flex和Flash是什么关系?flex 解决什么问题?flex和J2EE/.net是什么关系?

Flex 是 Macromedia发布的presentation server(展现服务),
它是Java Web container或者.net server的一个应用,
根据.mxml文件(纯粹的xml描述文件和actionscript)
产生相应得.swf文件,传送到客户端,由客户端的flash player或者shockwave player解释执行,
给用户以丰富的客户体验。

大名鼎鼎的Macromedia Flash是强大的矢量动画编辑工具,
在作动画起家之后,Flash一直在谋求rich internet application(ria富客户端)的霸主地位,

最有影响的是,已经推出了面向对象的编成脚本actionscript2.0,并且建立起类似于java Swing
的类库和相应component(组件)。

Flex是通过java或者.net等非Flash途径,解释.mxml文件组织components,并生成相应得.swf文件。

Flex的component和flash的component很相似,但是有所改进增强。

运用Flash是完全可以做到flex的效果的,为什么还需要flex呢?我理解这里面有两个原因:

1,为了迎合更多的developers(开发者)。
    Flash天生是为了designer(设计者)设计的,界面还有flash的动画概念和写程序的开发人员格格不入,
    为了吸引更多的JSP/ASP/PHP等程序员,
    Macromedia推出了Flex用非常简单的.mxml来描述界面和jsp/asp/php程序人员使用.(x/d)html非常相似,
    而且mxml更加规范化、标准化。

2,为了一个标准。大家一定听说过微软下一代系统longhorn,
   在longhorn推出的同时微软也会推出新的语言xaml,一种界面描述语言,
    与之相应的就是smart client和flex非常相似的东西。
    Mxml和Xaml的也很相似… …由此带来的一些列好处就不用我说了。

   Flex和j2ee/.net其实没什么关系,Macromedia用java做出来个应用把flash的技术融合到j2ee里面,
   再用.net的技术做出来个.net应用把flash技术融合到.net里面去;应该说flex解决了j2ee里面和.net
   最繁琐的问题那就是web 客户端的问题。
   微软比较卑鄙在ie里面built-in(事先安装好了)很多空间,可以被.net调用比如DataGrid,
   java就没有办法啦,只能用最原始的html一个tag一个tag地print,真是头疼,
   还有客户端的JavaScript是最难调试的,不论java还是.net都束手无策。

 

2.推荐flex :

      flex 主站研究:http://www.flex.org/  专业回答了flex能做啥,做成啥样的效果。

      到国内坛中看看:     http://www.earthplayer.com/bbs/index.php

 

3. flex细辩

  其实这个是属于rai技术的一个支端,是Macromedia 拿出的一个实现方案,

  摘抄:

  Flex is a framework that helps you build dynamic, interactive rich Internet applications. Flex applications are delivered on the web via the Flash Player or to the desktop via Adobe AIR.

   You can build applications using the free Flex SDK or Flex Builder, an Eclipse based IDE.

      Check out Flex for ColdFusion developers.

      Check out Flex for Java developers.

      Check out Flex for .NET developers.

      Check out Flex for PHP developers.

 

教学flex:

   http://learn.adobe.com/wiki/display/Flex/Getting+Started;jsessionid=2220BBEC6C61077EAA12FA09E7F7E7C5

posted @ 2008-05-07 20:11 kenlistian 阅读(624) | 评论 (2)编辑 收藏

游戏大的类别:
RTG     (Real-Time Game)                         即时游戏
TBG     (Turn-Based Game)                       回合制游戏
OLG     (Online Game)                              在线游戏(这个缩写好像只有中国才有--b)

种类:
RPG     (Role Playing Game)                     角色扮演游戏,例如《暗黑破坏神》
AVG     (Adventure Game)                       冒险游戏,例如《国王密使》
ACT     (Action Game)                              动作游戏,例如《鬼武者》
STG     (Shooting Game)                          射击游戏,例如《三角洲部队》,三角洲部队有第一人称模式。
FPS     (First Person Shooting)                 第一人称射击游戏,例如《反恐精英》
FTG     (Fighting Game)                           格斗游戏,例如《KOF》

RTS     (Real-Time Strategy Game)               即时战略游戏,例如《星际争霸》
RTM     (Real-Time Military Game)                即时战术游戏,例如《盟军敢死队》
TBS     (Turn-Based Strategy Game)              回合制策略游戏,例如《魔法门之英雄无敌》

RAC     (Race Game)                                   赛车游戏,例如《NFS》
SLG/SIM (Simulation Game)                       模拟游戏,例如《模拟城市》

EDU     (Education Game)                        养成游戏,例如《明星志愿》
SPT     (Sport Game)                                体育游戏,例如《FIFA》
PUZ     (Puzzle Game)                              益智游戏,例如《五子棋大师》
TAB     (Table Game)                               桌面游戏,例如《桌面弹球》

扩展种类:
ARPG    (Action RPG)                                 动作角色扮演游戏,例如《刀剑封魔录》
SRPG    (Simulation RPG)                           模拟角色扮演游戏,例如《风色幻想》
AAVG    (Action Adventure Game)            动作冒险游戏,例如《古墓丽影》
SFTG    (Simulation FTG)                           模拟格斗类游戏,找不出典型例子。
MMORPG  (Massively Multiplayer Online RPG)      大型多人在线角色扮演游戏,例如《传奇》
MMOARPG (Massively Multiplayer Online ARPG)     大型多人在线动作角色扮演游戏,例如《刀剑Online》
MMOSRPG (Massively Multiplayer Online SRPG)     大型多人在线模拟角色扮演游戏,例如《傲世Online》

其他类:
ETC     (etc.)                                  其他类游戏,无法被归为以上种类的游戏一般都认为是其他类,

                                                     随着时间推移,新的游戏种类不断推出,这些“其他类”游戏最终会拥有一个正式的名字。

 

 

还是有些乱,不过,我认为游戏分为如下:

1.第一人称类游戏              不管是动作类,角色,还是射击类,都是构建在虚拟真实模拟下。

                                         这类游戏一般架构在即时环境下。

 

2.第三人称类:               属于操纵类游戏了,包括即使,回合,动作;如果从技术讲就有2d,3d的实现。

 

3.益智类                       这个就是纯粹靠游戏强大的算法来支持了,

posted @ 2008-05-07 14:03 kenlistian 阅读(383) | 评论 (0)编辑 收藏

通过select中属性selected 来定义初值。
  如下:
 <select size="1" name="item" onChange="location=this.options[this.selectedIndex].value">
            <option value="?s_ServiceId=0" <%If s_ServiceId=0 Then%>selected <%End if%>>全部</option>   
              <%
      Set rs_lei = server.createobject("adodb.recordset")                                           
        sql = "select * from tb"                                           
        rs_lei.open sql,conn,1,1                                         

      do while not rs_lei.eof
          if rs_lei("s_ServiceId") <> 0 Then
      %>

      <option value="?s_ServiceId=<%=rs_lei("s_ServiceId")%>" <%If s_ServiceId=rs_lei("s_ServiceId") Then%>selected <%End if%>><%=rs_lei("s_Service")%></option>

            <%end if
         rs_lei.movenext                                     
              loop                                               
           rs_lei.close                                      
           set rs_lei = Nothing
         %>
 </select>

posted @ 2008-04-21 14:55 kenlistian 阅读(1434) | 评论 (0)编辑 收藏

网上的帖子贴来贴去,的确都是差不多,贴在自己的博客上也不是图个
什么,只是每次查询时不再用google搜,直接在自己博客copy用一下。
图个实用而已。

第一种:
    <script language="javascript" type="text/javascript">
           window.location.href="login.jsp?backurl="+window.location.href;
    </script>
第二种:
    <script language="javascript">
 alert("返回");
 window.history.back(-1);
   </script>
第三种:
   <script language="javascript">
 window.navigate("top.jsp");
  </script>
第四种:
   <script language="JavaScript">
          self.location='top.htm';
   </script>
第五种:
   <script language="javascript">
          alert("非法访问!");
          top.location='xx.jsp';
   </script>

javascript中弹出选择框跳转到其他页面
<script language="javascript">
function logout(){
   if (confirm("你确定要注销身份吗?\n是-选择确定,否-选择取消")){
     window.location.href="logout.asp?act=logout"
   }
}
</script>

<script language="javascript">
function logout(){
    alert("你确定要注销身份吗?");
    window.location.href="logout.asp?act=logout"
}
</script>
ASP中直接跳转到其他页面
<% response.redirect "logont.asp" %>

Html中确认后弹出新页面
function Del(id)
{
   if (confirm("你确定要删除吗?"))
   {
      window.open("otherfile.asp?ID="+id+"&act=del","top","width=640,height=400")
   }
}
Html中确认后跳转到其他页面 
function Del(URL)
{
   if (confirm("你确定要删除吗?"))
   {
      //URL="otherfile.htm"
      window.location.href=URL
   }
}

按钮式:  <INPUT name="pclog" type="button" value="GO" onClick="location.href='http://asdfa.cn/'">
链接式:   <a href="javascript:history.go(-1)">返回上一步</a>
          <a href="<%=Request.ServerVariables("HTTP_REFERER")%>">返回上一步</a>
直接跳转式:
         <script>window.location.href='http://www.asdfas.cn';</script>
开新窗口:
      <a href="javascript:" onClick="window.open('http://www.asdasa.cn/235.html','','height=500,width =611,scrollbars=yes,status=yes')">ddasdfasd</a>

1.
<script language="javascript">
    window.location = "http://www.baidu.com";
</script>
2
<script language="javascript">
    document.location = "http://www.baidu.com";
</script>
3: (带进度条)
<html>
<head>
<meta http-equiv="Content-Language" content="zh-cn">
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">
<title>跳转到baidu.com</title>
</head>
<body>
<form name=loading>
<P align=center><FONT face=Arial color=#0066ff size=2>loading...</FONT>
<INPUT style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bolder; PADDING-BOTTOM: 0px; COLOR: #0066ff; BORDER-TOP-style: none; PADDING-TOP: 0px; FONT-FAMILY: Arial; BORDER-RIGHT-style: none; BORDER-      LEFT-style: none; BACKGROUND-COLOR: white; BORDER-BOTTOM-style: none"  size=46 name=chart>
<BR>
<INPUT style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; COLOR: #0066ff; BORDER-BOTTOM: medium none; TEXT-ALIGN: center" size=47 name=percent>
<script language="javascript">
var bar=0
var line="||"
var amount="||"
count()

function count(){
    bar=bar+2
    amount =amount + line
    document.loading.chart.value=amount
    document.loading.percent.value=bar+"%"
    if (bar<99){
        setTimeout("count()",100);
    }else{
        window.location = "http://www.baidu.com/";
    }
}
</script>
</P>
</form>
</body>
</html>
 
 


 
posted @ 2008-04-16 17:22 kenlistian 阅读(3651) | 评论 (0)编辑 收藏

1.如何提交textarea中内容
          <form name= "form1" action="InsertWord.asp" method='get'> 
         <textarea id="edtInputWord" name ="txt" rows="25" cols="38"></textarea></td>
          <input type="submit" value="submit">
          </form>
      采用method="get/post"
      其提交参数提取textarea中name名称。


2.提交的是一个文本区中内容,如果每行是一个字段,则可以如下解析。
   Dim arr_lines
   strText = Request.Form("txt")
   strText = Replace(strText, chr(10), "<br>")
   arr_lines = split(strText, "<br>")
   for i = 0 to ubound(arr_lines)
     ....
   next

3.如何通过快捷键提交。
a。CTRL+ENTER 提交
<script language=javascript>

ie = (document.all)? true:false
if (ie)
{
   function ctlent(eventobject)
   {
      if(event.ctrlKey && window.event.keyCode==13)
      {
          this.document.form1.submit();
       }
    }
}
</script>

<form action="post.Html" method=POST name=form1>
<textarea cols=95 name=Content rows=12 wrap=virtual onkeydown=ctlent()>
</textarea>
<input type=Submit value="Submit" name=Submit>
</form>

b。Accesskey 提交
<form action="post.html" method=POST name=form1>
<textarea ></textarea>
<br><input type=submit accessKey="S" value=提交(Alt+s)>




 

posted @ 2008-04-15 11:55 kenlistian 阅读(5794) | 评论 (1)编辑 收藏

1. 长度限制
<script>
function test()
{
    if(document.a.b.value.length>50)
   {
        alert("不能超过50个字符!");
        document.a.b.focus();
        return false;
   }
}
</script>

<form name=a  submit="return test()">
<textarea name="b" cols="40" wrap="VIRTUAL" rows="6"></textarea>
<input type="submit" name="Submit" value="check">
</form>

2. 只能是汉字
<input nkeyup="value="/oblog/value.replace(/[^\u4E00-\u9FA5]/g,'')">

3." 只能是英文
<script. language=javascript>
function onlyEng()
{
    if(!(event.keyCode>=65&&event.keyCode<=90))
         event.returnvalue=false;
}
</script>
<input nkeydown="onlyEng();">

4. 只能是数字
<script. language=javascript>
function onlyNum()
{
if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))
  //考虑小键盘上的数字键
    event.returnvalue=false;
}
</script>
<input nkeydown="onlyNum();">

5. 只能是英文字符和数字
<input nkeyup="value="/oblog/value.replace(/[\W]/g,"'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))">

6. 验证油箱格式
<SCRIPT. LANGUAGE=javascript. RUNAT=Server>
function isEmail(strEmail)
{
    if (strEmail.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
        return true;
   else
      alert("oh");
}
</SCRIPT>
<input type=text nblur=isEmail(this.value)>

7. 屏蔽关键字(这里屏蔽***和****)
<script. language="javascript1.2">
function test()
{
    if((a.b.value.indexOf ("***") == 0)||(a.b.value.indexOf ("****") == 0)){
             alert(":)");
            a.b.focus();
            return false;}
}
</script>
<form. name=a nsubmit="return test()">
<input type=text name=b>
<input type="submit" name="Submit" value="check">
</form>

8. 两次输入密码是否相同
<FORM. METHOD=POST ACTION="">
<input type="password" id="input1">
<input type="password" id="input2">
<input type="button" value="test" nclick="check()">
</FORM>
<script>
function check()
{
      with(document.all){
           if(input1.value!=input2.value)
         {
               alert("false")
               input1.value = "";
               input2.value = "";
          }
          else document.forms[0].submit();
        }
}
</script>

屏蔽右键 很酷
  oncontextmenu="return false" ndragstart="return false" nselectstart="return false"
加在body中


2.1   表单项不能为空

<script   language="javascript">
<!--
function   CheckForm()

      if   (document.form.name.value.length   ==   0)   { 
           alert("请输入您姓名!");
          document.form.name.focus();
          return   false;
     }
     return   true;
}
-->
</script>

2.2   比较两个表单项的值是否相同

<script   language="javascript">
<!--
function   CheckForm()
if   (document.form.PWD.value   !=   document.form.PWD_Again.value)   { 
     alert("您两次输入的密码不一样!请重新输入.");
     document.ADDUser.PWD.focus();
     return   false;
   }
   return   true;
}
-->
</script>

2.3   表单项只能为数字和"_",用于电话/银行帐号验证上,可扩展到域名注册等

<script   language="javascript">
<!--
function   isNumber(String)

     var   Letters   =   "1234567890-";   //可以自己增加可输入值
     var   i;
     var   c;
     if(String.charAt(   0   )=='-')
          return   false;
     if( String.charAt(   String.length   -   1   )   ==   '-'   )
         return   false;
      for( i   =   0;   i   <   String.length;   i   ++   )
     { 
          c   =   String.charAt(   i   );
         if   (Letters.indexOf(   c   )   <   0)
         return   false;
      }
      return   true;
}

function   CheckForm()

    if(!   isNumber(document.form.TEL.value))   { 
        alert("您的电话号码不合法!");
       document.form.TEL.focus();
return   false;
}
return   true;
}
-->
</script>


2.4   表单项输入数值/长度限定

<script   language="javascript">
<!--
function   CheckForm() 

if  (document.form.count.value   >   100   ||   document.form.count.value   <   1)

alert("输入数值不能小于零大于100!");
document.form.count.focus();
return   false;
}
if   (document.form.MESSAGE.value.length<10)

alert("输入文字小于10!");
document.form.MESSAGE.focus();
return   false;
}
return   true;
}
//-->
</script>

2.5   中文/英文/数字/邮件地址合法性判断

<SCRIPT   LANGUAGE="javascript">
<!--

function   isEnglish(name)   //英文值检测

if(name.length   ==   0)
return   false;
for(i   =   0;   i   <   name.length;   i++)   { 
if(name.charCodeAt(i)   >   128)
return   false;
}
return   true;
}

function   isChinese(name)   //中文值检测

if(name.length   ==   0)
return   false;
for(i   =   0;   i   <   name.length;   i++)   { 
if(name.charCodeAt(i)   >   128)
return   true;
}
return   false;
}

function   isMail(name)   //   E-mail值检测

if(!   isEnglish(name))
return   false;
i   =   name.indexOf("   at   ");
j   =   name   dot   lastIndexOf("   at   ");
if(i   ==   -1)
return   false;
if(i   !=   j)
return   false;
if(i   ==   name   dot   length)
return   false;
return   true;
}

function   isNumber(name)   //数值检测

if(name.length   ==   0)
return   false;
for(i   =   0;   i   <   name.length;   i++)   { 
if(name.charAt(i)   <   "0"   ||   name.charAt(i)   >   "9")
return   false;
}
return   true;
}

function   CheckForm()

if(!   isMail(form.Email.value))   { 
alert("您的电子邮件不合法!");
form.Email.focus();
return   false;
}
if(!   isEnglish(form.name.value))   { 
alert("英文名不合法!");
form.name.focus();
return   false;
}
if(!   isChinese(form.cnname.value))   { 
alert("中文名不合法!");
form.cnname.focus();
return   false;
}
if(!   isNumber(form.PublicZipCode.value))   { 
alert("邮政编码不合法!");
form.PublicZipCode.focus();
return   false;
}
return   true;
}
//-->
</SCRIPT>

2.6   限定表单项不能输入的字符

<script   language="javascript">
<!--

function   contain(str,charset)//   字符串包含测试函数

var   i;
for(i=0;i<charset.length;i++)
if(str.indexOf(charset.charAt(i))>=0)
return   true;
return   false;
}

function   CheckForm()

if   ((contain(document.form.NAME.value,   "%\(\)><"))   ||   (contain(document.form.MESSAGE.value,   "%\(\)><")))

        alert("输入了非法字符");
        document.form.NAME.focus();
       return   false;
}
return   true;
}
//-->
</script> 

1. 检查一段字符串是否全由数字组成      
---------------------------------------      
<script. language="Javascript"><!--          
function checkNum(str){return str.match(/\D/)==null}          
alert(checkNum("1232142141"))          
alert(checkNum("123214214a1"))          
// --></script>        
     
2. 怎么判断是否是字符        
---------------------------------------      
if (/[^\x00-\xff]/g.test(s)) alert("含有汉字");         
else alert("全是字符");     
          
3. 怎么判断是否含有汉字       
---------------------------------------       
if (escape(str).indexOf("%u")!=-1) alert("含有汉字");        
else alert("全是字符");          
   
4. 邮箱格式验证   
---------------------------------------     
//函数名:chkemail    
//功能介绍:检查是否为Email Address    
//参数说明:要检查的字符串    
//返回值:0:不是 1:是    
function chkemail(a)    
{ var i=a.length;    
var temp = a.indexOf('@');    
var tempd = a.indexOf('.');    
if (temp > 1) {    
if ((i-temp) > 3){    
if ((i-tempd)>0){    
return 1;    
}    
   
}    
}    
return 0;    
}    
   
5. 数字格式验证   
---------------------------------------     
//函数名:fucCheckNUM    
//功能介绍:检查是否为数字    
//参数说明:要检查的数字    
//返回值:1为是数字,0为不是数字    
function fucCheckNUM(NUM)    
{    
var i,j,strTemp;    
strTemp="0123456789";    
if ( NUM.length== 0)    
return 0    
for (i=0;i<NUM.length;i++)    
{    
j=strTemp.indexOf(NUM.charAt(i));    
if (j==-1)    
{    
//说明有字符不是数字    
return 0;    
}    
}    
//说明是数字    
return 1;    
}    
   
6. 电话号码格式验证   
---------------------------------------     
//函数名:fucCheckTEL    
//功能介绍:检查是否为电话号码    
//参数说明:要检查的字符串    
//返回值:1为是合法,0为不合法    
function fucCheckTEL(TEL)    
{    
var i,j,strTemp;    
strTemp="0123456789-()# ";    
for (i=0;i<TEL.length;i++)    
{    
j=strTemp.indexOf(TEL.charAt(i));    
if (j==-1)    
{    
//说明有字符不合法    
return 0;    
}    
}    
//说明合法    
return 1;    
}   
  
7. 判断输入是否为中文的函数  
---------------------------------------     
function ischinese(s){  
var ret=true;  
for(var i=0;i<s.length;i++)  
ret=ret && (s.charCodeAt(i)>=10000);  
return ret;  
}   
  
8. 综合的判断用户输入的合法性的函数 
---------------------------------------     
<script. language="javascript"> 
//限制输入字符的位数开始 
//m是用户输入,n是要限制的位数 
function issmall(m,n) 

if ((m<n) && (m>0)) 
   { 
   return(false); 
   } 
else 
{return(true);} 

 
9. 判断密码是否输入一致 
---------------------------------------     
function issame(str1,str2) 

if (str1==str2) 
{return(true);} 
else 
{return(false);} 

 
10. 判断用户名是否为数字字母下滑线
---------------------------------------     
function notchinese(str){
var reg=/[^A-Za-z0-9_]/g
     if (reg.test(str)){
     return (false);
     }else{
return(true);     }
}

2.8. form文本域的通用校验函数
---------------------------------------     
作用:检测所有必须非空的input文本,比如姓名,账号,邮件地址等等。
该校验现在只针对文本域,如果要针对form里面的其他域对象,可以改变判断条件。

使用方法:在要检测的文本域中加入title文字。文字是在提示信息,你要提示给用户的该字段的中文名。
比如要检测用户名
html如下<input name="txt_1" title="姓名">,用可视化工具比如dreamweaver什么的来编辑域。
如果要检测数字类型数据的话,再把域的id统一为sz.
javascript判断日期类型比较麻烦,所以就没有做日期类型校验的程序了。

函数调用方法:< form   submit="return dovalidate()">

function dovalidate()
{
     fm=document.forms[0] //只检测一个form,如果是多个可以改变判断条件
     for(i=0;i<fm.length;i++)
     { 
     //检测判断条件,根据类型不同可以修改
     if(fm[i].tagName.toUpperCase()=="INPUT" &&fm[i].type.toUpperCase()=="TEXT" && (fm[i].title!=""))
   
          if(fm[i].value="/blog/="")//
          {
          str_warn1=fm[i].title+"不能为空!";
          alert(str_warn1);
         fm[i].focus();
          return false;        
          }
          if(fm[i].id.toUpperCase()=="SZ")//数字校验
          {
                  if(isNaN(fm[i].value))
                 { str_warn2=fm[i].title+"格式不对";
                 alert(str_warn2);
                 fm[i].focus();
                  return false;
                  }
         }
     }
     return true;
}

posted @ 2008-04-14 18:17 kenlistian 阅读(440) | 评论 (0)编辑 收藏


基础不扎实啊。没有系统看过javascript,直接看javascript代码,老是发现花括号
在javascript中使用,如果仅仅是包个函数体也就得了,但是有时看到一些考究点
用法,就像是ruby中的hash用法一样,通过key对应值来表达一个意思时,往往
在脑海中当作类似对象而一阅而过。或把它当作json模式晃过。

今天当了个javasscript的大全(chm格式)仔细查找{}的用法,竟然没有找到用{}
各种说明?!(搞什么搞)
  翻了下网上资料,学到了所要明白的东西。

   如下就是我所要的:没在help资料上看到叙述,倒在优秀代码中发现比比皆是都
这样定义对象啊。


JavaScript 中的对象其实就是属性(方法)的一个集合,并没有严格意义的类的概念。
它提供了另外一种简单的方式来创建对象,即大括号({})语法:
    {
      property1:statement,
      property2:statement2,
         …,
     propertyN:statmentN
    }

   通过大括号括住多个属性或方法及其定义(这些属性或方法用逗号隔开),
来实现对象的定义,这段代码就直接定义个了具有n个属性或方法的对象,
其中属性名和其定义之间用冒号(:)隔开。

   var user={
              name:"jack",                //定义了name属性,初始化为jack
             favoriteColor:["red","green","black","white"],//定义了颜色喜好数组
             hello:function(){            //定义了方法hello
                                     alert("hello,"+this.name);
                                    },
             sex:"male"                 //定义了性别属性sex,初始化为sex
           }
  和json格式差不多,不过函数也作为key值来表示,而这在ruby中,也是通用的
  格式。不过用=> 来代替:而已。





posted @ 2008-04-10 19:14 kenlistian 阅读(2980) | 评论 (1)编辑 收藏


 1.  在拿一个提交页面的例子学习,发现老是new Ext.form.Form被提示不是一个容器的错误。查了些资料,原来在开发者log中被删除,在版本2.0后不再支持该类。(http://extjs.com/forum/showthread.php?t=12866
   其中,该类中的部分函数也被移除掉,如添加输入控件的fieldset。在看教程中一定要看清楚该版本是属于啥版本,否则搞错了就要费工夫翻源码,找问题了。
src/widgets/form/
Field
- Removed applyTo function (use base render function instead)
Form
- Converted Ext.form.Form to Ext.form.FormPanel (extends Panel instead of BasicForm)
- Removed functions column, fieldset, container, start and end
Layout
- Replaced Ext.form.Layout with Ext.layout.FormLayout
- Changed Fieldset to extend FormLayout instead of form.Layout

其中更为详细的1.0到2.0的修改移植见:http://hzjavaeyer.group.javaeye.com/group/blog/134693

2.有关ext的架构模型(来自i_love_sc,不过好像讲解的是1.0版本的,)

      EXT中所有和数据相关的类都放在Ext.data命名空间下。

    * Store:        最主要的对外交互接口,内部保存了一个数据集。
      JsonStore
      JsonReader    把代理读取的数据读入数据集。
  
    * Record:       数据集里面的每一条记录。
    * DataField:    定义了记录每个字段的schema。
    * DataProxy:    获取数据的代理。
      ScriptTagProxy
      HttpProxy,
    * DataReader:   把代理读取的数据读入数据集。

 Store的实现
     内部用一个Ext.util.MixedCollection(既能够作为map进行索引,又能够作为list进行索引,并且更新数据时会触发事件,并且有一些其它功能的数据结构)作为数据集存放record。store实例的data域指向这个数据集。
   通过proxy加载不同来源的数据,如http remote,memory data等等。
   由于proxy加载过来的数据是异构的,所以通过不同DataReader的实现类来读入数据成为record。

    当调用load方法时候,就会委托proxy去加载数据。
    在data数据集中数据的数据,添加,修改,删除的时候触发事件。


Store数据加载流程简介

  1. 实例化一个Proxy的实现proxy。
  2. 实例化一个DataReader的实现reader。
  3. 实例化一个Store对象store。设置store的proxy与reader。
  4. 监听store的load事件或者datachange事件。
  5. 调用store.load()
  6. store.load会调用proxy的load方法来加载数据(各种DataSource)。并且把reader作为参数传入。
  7. proxy的load方法加载完数据之后,调用传入的reader的read方法,并且把数据作为参数传入。
  8. reader的read方法把异构数据读入成record数据集。
  9. proxy把reader.read方法生成的record数据集作为参数,回调store。
  10. store把数据集添加到或者替换原来的数据集。
  11. 触发load事件,触发datachange事件。

 

posted @ 2008-04-10 15:06 kenlistian| 编辑 收藏

仅列出标题
共42页: First 31 32 33 34 35 36 37 38 39 Last