javascript 浅学

-------------------------------------
最近觉得学的动西都只是皮毛感觉很多都很迷漫于是下决心一个一个突破
-------------------------------------------
在以前对js中进一步的了解
---------------------------
1  客户端Javascript
客户端的JavaScript随着AJAX技术的复兴,越来越凸显了Javascript的特点,也有越来越多的开发人员开始进行JavaScript的学习,使用Javascript,你可以使你的WEB页面更加生动,通过AJAX,无刷新的更新页面内容,可以大大的提高用户体验,随着大量的JavaScript包如jQuery, ExtJS,Mootools等的涌现,越来越多的绚丽,高体验的WEB应用被开发出来,这些都离不来幕后的JavaScript的支持。
--------------------------------
2  服务端Javascript
相对客户端而言,服务器端的JavaScript相对平淡很多,但是随着JavaScript被更多人重视,JavaScript在服务器端也开始迅速的发展起来,Helma, Apache Sling等等。在服务器端的JavaScript比客户端少了许多限制,如本地文件的访问,网络,数据库等。

一个比较有意思的服务端JavaScript的例子是Aptana的Jaxer,Jaxer是一个服务器端的Ajax框架,我们可以看这样一个例子(例子来源于jQuery的设计与实现这John Resig):



Html代码 
<html> 
<head> 
<script src="http://code.jquery.com/jquery.js" runat="both"></script> 
<script> 
jQuery(function($){  
$("form").submit(function(){  
save( $("textarea").val() );  
return false;  
});  
});  
</script> 
<script runat="server"> 
function save( text ){  
Jaxer.File.write("tmp.txt", text);  
}  
save.proxy = true;  
function load(){  
$("textarea").val(  
Jaxer.File.exists("tmp.txt") ? Jaxer.File.read("tmp.txt") : "");  
}  
</script> 
</head> 
<body onserverload="load()"> 
<form action="" method="post"> 
<textarea></textarea> 
<input type="submit"/> 
</form> 
</body> 
</html> 

<html>
<head>
<script src="http://code.jquery.com/jquery.js" runat="both"></script>
<script>
jQuery(function($){
$("form").submit(function(){
save( $("textarea").val() );
return false;
});
});
</script>
<script runat="server">
function save( text ){
Jaxer.File.write("tmp.txt", text);
}
save.proxy = true;
function load(){
$("textarea").val(
Jaxer.File.exists("tmp.txt") ? Jaxer.File.read("tmp.txt") : "");
}
</script>
</head>
<body onserverload="load()">
<form action="" method="post">
<textarea></textarea>
<input type="submit"/>
</form>
</body>
</html> 
runat属性说明脚本运行在客户端还是服务器端,client表示运行在客户端,server表示运行在服务器端,而both表示可以运行在客户端和服务器端,这个脚本可以访问文件,并将文件加载到一个textarea的DOM元素中,还可以将textarea的内容通过Form表单提交给服务器并保存。

你可能感兴趣的:(JavaScript,jquery,Ajax,应用服务器,aptana)