Recently in javascript Category
dojo/data 主要定义了dojo/data的接口结构,以及最基本的几个util 1. dojo/data/api 定义接口结构 1.1. Read.js 1.1.1. 依赖 dojo.require("dojo.data.api.Request"); 1.1.2. 成员函数 getValue: function( /* item */ item, /* attribute-name-string.........
转自: http://www.jb51.net/article/7905.htm一、功能实现核心:FileSystemObject 对象 要在javascript中实现文件操作功能,主要就是依靠FileSystemobject对象。 二、FileSystemObject编程 使用FileSystemObject 对象进行编程很简单,一般要经过如下的步骤: 创建FileSystemObject对象、应用相关方法、访问对象相关属性 。 (一)创建FileSystemObject对象 创建FileSystemObject对象的代码只要1行: var fso = new ActiveXObject("Scripting.FileSystemObject"); 上述代码执行后,fso就成为一个FileSystemObject对象实例。 (二)应用相关方法 创建对象实例后,就可以使用对象的相关方法了。比如,使用CreateTextFile方法创建一个文本文件: var fso = new ActiveXObject("Scripting.FileSystemObject"); var f1 = fso.createtextfile("c:\\myjstest.txt",true"); (三)访问对象相关属性 要访问对象的相关属性,首先要建立指向对象的句柄,这就要通过get系列方法实现:GetDrive负责获取驱动器信息,GetFolder负责获取文件夹信息,GetFile负责获取文件信息。比如,指向下面的代码后,f1就成为指向文件c:\test.txt的句柄: var fso = new ActiveXObject("Scripting.FileSystemObject"); var f1 = fso.GetFile("c:\\myjstest.txt"); 然后,使用f1访问对象的相关属性。比如: var fso = new ActiveXObject("Scripting.FileSystemObject"); var f1 = fso.GetFile("c:\\myjstest.txt"); .........
1. Summary:This is a Javascript api file based on DOJO framework. Since EEEE-works supply a open(free) database & data manipulate.........
if (window.showTocToggle) { var tocShowText = "显示"; var tocHideText = "隐藏"; showTocToggle(); } 依赖关系 dojo.require("dojo.io.script"); //用于跨域ajax GET请求dojo.require("dojo.io.iframe"); //用于跨域 ajax.........
在IE 6.0下,form的enctype无法通过javascript的.enctype修改和控制。比如: 我要写一个提交文件用的form <form id='ie' method='post' action="http://10.62.136.44/web/file/ReceiveFile.php" target="_blank"><input type="file" name="dynamic1" /><input type="submit" name="submit" value="submit"></form> 然后使用脚本将enctype修改为 "multipart/form-data" document.getElementById("ie").enctype = "multipart/form-data";或者 document.getElementById("ie").setAttribute("enctype","multipart/form-data");这时,你会发现,form的enctype类型已经变了,但是,之后如果点击submit,同时抓header包,可以看到,发出的post还是“application/x-www-form-urlencoded”.........
最近使用OPENAPI做了一个“富客户端”,几近0服务器端的BBS(留言版)测试地址见: http://carriezh.cn/1214/创建步骤大概分为数据库和应用程序两部分: 1,数据库部分主要工作是在原有API的基础上,创建自己BBS所需要的一写model,view等 2,应用程序部分,就是编写这个BBS所有可能用到操作的执行和响应动作。数据库部分注册用户: 使用API提供的用户注册方法注册BBS的主人,通过这个用户,你可以创建多个角色,以便对于不同角色使用不同的安全控制机制。 默认情况下,系统会分配你每个新注册用户一个Admin角色和一个Public角色,Admin角色需要密码进行登录。创建Model: 目的:Model的概念类似于数据库中的表,他用来存储你的BBS数据, 方法:向API接口发POST请求,在POST的内容中规定model的名称和字段等属性。 注意:创建Model之前,需要先以Admin角色登录你之前注册的用户,该Model将生成在这个用户下面。创建View: 目的:View的概念类似于数据集合,根据特定条件创建View后,可以在应用程序中根据执行的指定View来返回各种不同需求的结果数据。 方法:向API创建View的接口发送POST的请求,POST的内容中包括这个View的名称,以及这个View被访问时等效的数据库查询语句。 注意:创建View之前,需要先以Admin角色登录你之前注册的用户,该View将生成在这个用户下面。 在这里,也可以使用访问数据库存储过程的方法来使View更加灵活的生成想要的数据,或者执行复杂的操作。创建角色: 目的:规范使用你应用程序的用户群,使不同类型的用户具有不同权限,比如对于发帖的人需要通过验证码(水印)校验,或者建立自己的BBS用户登录系统等等。 方法:向API创建角色的接口发送POST请求,POST的内容是角色名称及描述。若要给已经存在的角色添加可以做哪些事情(可以发送的API请求),需要通过POST向那个角色下面添加可执行操作的名称,以及相应操作要使用的请求地址。这个地址可以是访问一个View的名称等。应用程序部分应用程序中包括html、javascript和css三部分,其中javascript是数据交互的重点:其中包含两个主要类:Comment.js 和 CommentManager.js。Comment.js定义了对于每个单独的帖子(或留言)所要具备的一些属性和方法;CommentManager.js 是一个负责调配、展示、存取数据的管理类,其中包括设置API访问的接口,展现的帖子数量、展现位置、发查询的动作、在页面上画出返回的相应数据等。Comment类: Comment.populateComment():根据页面中相应字段(输入框等)的值组装一个Comment对象。 Comment.populateScreen():根据对象的各个属性的值,填充到页面的相应字段中。 .........
转自:http://www.howtocreate.co.uk/tutorials/javascript/browserwindowWindow size and scrolling function alertSize() { var myWidth = 0, myHeight = 0; if( typeof( window.innerWidth ) == 'number'.........
什么是dojo.data dojo.data 是一个统一的数据访问层,他屏弃了数据库驱动和唯一数据格式的概念。所有的数据都展现为一个元素(item)或元素的一个属性(attribute)。具有这样表现形式的数据,可以通过一种标准方式来访问。有新意的是,dojo.data提供了基本的ItemFileReadStore,来读取特定格式的JSON数据。DojoX项目提供了更多存储方法(例如,一个简单的XmlStore,CsvStore,以及OpmlStore)可以适用于那些输出相应格式数据的服务器。另外,dojo.data也是一个其他用户可以写入的API,所以你可以写为某个指定数据格式写一个存储方法,作为整个dojo.data API的一个子集,或者是任何其他的你想要使用的指定数据集合的处理服务。在拥有了属于你自己的可以通过一个datastore来访问的特定数据格式之后,可以不用学习任何新的API就能够存取你的数据了。 最后,dojo.data的目标,是提供一个可扩展的API集合,作为一个可以添加任何datastore的接口。那些融入标准接口的存储方法,应该可以在更广泛多样的应用程序、窗口小部件等可交互程序中使用。本质上来说,API暗含了特定的数据结构,可能是JSON, XML, CSV或其他格式,并提供了访问元素和元素中属性的方法。This also allows optimizations on data access to be placed where they are.........
刚刚翻译完的:http://developer.mozilla.org/cn/docs/DOM:Storage 摘要 DOM Storage,就是在Web Applications 1.0 specification中介绍的那些存储相关特性集合的名称。相比较在cookies中存储信息来说,DOM Stroage更大、更安全、更易于使用的。目前它只在基于Moziila的浏览器中可以使用,从Firefox2开始。 Note: DOM Storage 与 mozStorage (Mozilla对于SQLite的XPCOM接口)和Session store API(扩展使用的一个XPCOM存储).不同 描述 DOM Storage机制是一种通过字符串形式的名/值对来安全地存储和使用的方法。这个附加功能的目标是提供一个更全面的、可以创建交互式应用程序的方法(包括那些高级功能,例如可以离线工作一段时间)。 目前,只有基于Mozilla的浏览器提供了DOM.........
转自:http://www.blogjava.net/emu/archive/2006/10/04/73385.html很多时候我们做web开发往cookie里面存数据,只是为了在不同的网页之间跳转的时候可以共享数据,但是cookie里面的每个数据不管是否需要都会 在每个同域的http请求中被发送往服务器,包括每个页面、图片、css、脚本或者ajax的的请求,这就无形中占用了多余的带宽。更糟糕的是,一个网页 的cookie本来也只有有限的4k空间,一旦不小心写入的cookie超过了限制,就会造成原来有用的cookie丢失,这样造成的bug非常难以追 查。因此我们在IE下面经常使用userdata来保存共享数据。但是在firefox下面却一直缺乏对应的特性。今天在看firefox 2.0的what's new 的时候,惊奇的发现一个新特性叫做:Support for client-side session and persistent storage赶紧试验了一下,firefox2.0果然支持这个特性了。虽然还只能在session生命周期内使用(而不像ie的userdata可以指定有效时间),但是总算解决了cookie占用的问题了。以前曾经写过一个只支持ie的userdata管理器,现在可以升级了:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML><HEAD><TITLE> UserData manager </TITLE><META NAME="Generator" CONTENT="EditPlus"><META NAME="Author" CONTENT="emu"><META NAME="Keywords" CONTENT="IE USER DATA manager"><META NAME="Description" CONTENT="UserData manager"></HEAD><BODY><SCRIPT LANGUAGE="JavaScript"><!--var isIE = !!document.all;if(isIE)document.documentElement.addBehavior("#default#userdata");function saveUserData(key, value){ var ex; if(isIE){ with(document.documentElement)try { load(key); setAttribute("value", value); save(key); return getAttribute("value"); }catch (ex){ alert(ex.message) } }else if(window.sessionStorage){//for firefox 2.0+ try{ sessionStorage.setItem(key,value) }catch (ex){ alert(ex); } }else{ alert("当前浏览器不支持userdata或者sessionStorage特性") }}function loadUserData(key){ var ex; if(isIE){ with(document.documentElement)try{ load(key); return getAttribute("value"); }catch (ex){ alert(ex.message);return null; } }else if(window.sessionStorage){//for firefox 2.0+ try{ return sessionStorage.getItem(key) }catch (ex){ alert(ex) } }else{ alert("当前浏览器不支持userdata或者sessionStorage特性") }}function deleteUserData(key){ var ex; if(isIE){ with(document.documentElement)try{ load(key); expires = new Date(315532799000).toUTCString(); save(key); } catch (ex){ alert(ex.message); } }else if(window.sessionStorage){//for firefox 2.0+ try{ sessionStorage.removeItem(key) }catch (ex){ alert(ex) } }else{ alert("当前浏览器不支持userdata或者sessionStorage特性") }} saveUserData("emu","hello world !")alert(loadUserData("emu"))deleteUserData("emu")alert(loadUserData("emu"))//--></SCRIPT></BODY></HTML>这个特性不能在本地网页上试验,必须把页面用某个服务器(apache或者iis都可以)发布后用firefox访问。.........
