日期:2014-05-18  浏览次数:20564 次

请教购物车的实现及URL重写的问题
请看网站:http://kaichiba.com/s_22.html
问题:
1、点"吃一份"的时候,它有一个菜名飞到购物车的动作,请问是用JQuery实现的吗?我找了好久怎么就没有找到类似的实例呢?(用JQery功能基本可以实现,但是没有动画效果)
2、我查看原文件,发现这个网站没有明显的按钮事件,比如:onclick="funcion();"等,比如本页面中的第一份面“红烧土豆盖饭”后面的[吃一份]按钮事件是这样的:

<div class="foodListItem" id="liFood_125988" 
food-foodid="125988" 
food-foodname="红烧土豆盖饭新出的" 
food-supid="22" food-typeid="9458" 
food-price="8.0" 
food-foodstate="0" 
food-foodunit="份" 
food-supname="开吃吧虚拟餐厅--体验测试订外卖" 
food-businessstate="1"
food-activitystate="0">
<ul class="foodListInfo">
  <li class="foodTitle">
  红烧土豆盖饭新出的<span>(份)</span></li>
  <li class="price_outer">
  <span class="foodPrice">8.0</span>元</li>
  <li ><a class="addToOrder">
  </a></li>
</ul>
<p class="description">
11111111</p>
</div>

请问是怎么实现事件触发的呢,小弟愚钝,想学习这方面的技术。
3、我注意到这个网站是用.net开发的,但是它的网站路径的后掇不是.aspx结尾,是s_22.html这样的名称,更奇怪的是网站的主页名称一会儿是“http://kaichiba.com/4.html”,一会儿是“http://kaichiba.com/3.html。
请问这样安全性是不是更好一点,这是怎么实现的?小弟之前以做ERP、OA为主,对这些网站的东东了解有限,现对这几样先进的技术很感兴趣,求大侠帮忙指点一下。

------解决方案--------------------
在数据中的class属性往往不是用来标记显示时使用的css样式,而就是对数据的分类(就好象数据库中的表一样)。

一个真正的所谓 div+css 网页,绝不是纠缠什么“用不用” table,而是其数据与布局和样式分离。数据就是数据,例如你看到的分层的div、ul、li,这就好象是树结构一样,将信息数据库分层存放。但是这写信息如何布局,则是使用javascript(例如jQuery)来动态生成dom对象的。比如说要绑定数据到一个table中,那么就可以使用jQuery比较擅长的枚举方式(就好象linq一样)去写精炼的代码,而将真正精力放到枚举的每一个数据obj创建tr、td上。使用javascript动态创建布局,这是关键。

------解决方案--------------------
将数据查询出来并绑定到布局dom结构上,以及产生动画等等,使用javascript类库都可以实现。所以真正的前端开发人员开发javascript类库(例如jQuery插件),比较低级的前端开发人员才会去所谓的aspx等页面上去写什么javascript代码。
------解决方案--------------------
很久以来一些人空谈什么“不要使用asp.net服务器控件”这类,可是很少见他不使用服务器控件之后还能写出复杂一点的交互式企业应用程序,发现其写的都只是简单地宣传性网站首页了。

实际上asp.net的问题在于它没有在5、6年前跟上ajax形式而将所有服务器控件都移植为浏览器端才渲染(而仅仅使用web service跟asp.net通讯)这种形式。现在asp.net仍然是动不动就跑到服务器上重新生成html的形式,而asp.net mvc更是悲剧地每一次回发都要重新访问数据库等等来重建所有状态数据(asp.net则可以自动恢复状态无需访问数据库)。这是其问题,结果被人说成了“只要用html/javascript开发一切就迎刃而解了”。

其实你“想学习这方面的技术”,那么就要学习使用javascript开发客户端组件(插件)的技术,而不是仅仅学一点基本的html/css/javascript语法。特别是结合jQuery这类简单地工具,方便开发数据驱动的javascript组件。等你掌握自己的十几个常用的javascript组件,再将一些常用的小型应用程序封装为一个大一点的组件,直接去解析这类<div><ul><li>层次数据库去产生交互界面,那就是分分钟的开发工作量,而不是很多以为的需要几天去编写和调试。

这个网站的页面看起来设计的很差劲,我想它只是提醒人们可以使用(类似google页面等就经常采用)javascript组件开发知识来自动生成页面,而不是低级的每一次都重新拼凑html页面。它只是说明了一些技术。但是这个网站的美工实在是很差劲。