我正在构建一个StackOverflow和Digg之间的交叉网站(只是一个不同的类型).通常在过去我会使用ASP.Net Web表单构建它.但是我想用这个项目来学习新技术.我正在使用ASP.Net Mvc这真的很棒,但我需要学习/使用某种javascript库.
例如,当有人在帖子上投票时,我希望立即更新投票计数,或者如果有人在"标签"文本框中键入文本,我希望它能够提供当前使用的标签等的下拉列表.我想为我的网站提供很多AJAXy的东西.
所以我的问题是我从哪里开始?我觉得有这么多选择的轰炸,我不知道从哪里开始,甚至不知道它们是什么.有人可以理顺我并提供一些解释和方向吗?
JSON
JQuery的
MS-AJAX
我敢肯定,目前我还记得很多其他人.
你一定要从Javascript的基础知识开始.从打印"Hello World"到页面开始.转到基本语言功能,如变量,循环,条件和函数.我推荐W3Schools Javascript简介.在Javascript中尝试进行面向对象编程时不要太过紧张.即使对于一些有经验的Javascript程序员来说,这也是令人痛苦和困惑的.
接下来,我强烈建议学习使用跨浏览器的Javascript库,而不是尝试手动完成所有操作(特别是:与DOM交互,执行XmlHttpRequests,即AJAX调用等).我推荐jQuery库.它为您想要做的所有很酷的AJAX-y事件提供了坚实的基础,并且有大量可用的插件.
jQuery是一个Javascript框架,允许与文档对象模型(DOM)轻松可靠地交互.简单来说,DOM是网页中所有HTML元素的表示.DOM在浏览器与浏览器之间略有不同,并且"手动"与它进行交互是繁琐且容易出错的.jQuery基本上完成了幕后的所有艰苦工作,从而解决了这个问题.它比那更强大,真的,但这是主要特征.它还为页面事件,自定义事件,插件,CSS操作等提供支持.
JSON是你提到的另一个术语.它代表JavaScript Object Notation.JSON只是一种在Javascript(实际上也是其他语言)中表示结构的轻量级方式.说实话,Wikipedia JSON文章提供了一个更好的JSON如何与AJAX一起使用的摘要,所以你可能想要读一读.
以下是事件的基本顺序:
您的Javascript代码对网页进行AJAX调用.您可以使用jQuery中的AJAX函数来完成此操作.
该网页产生的结果是一个JSON对象.例如,它可能会生成一个类似于以下内容的字符串:{ 'firstname':'Robert', 'lastname':'Smith' }
结果由您的AJAX调用接收,并使用特殊的Javascript"eval"函数进行评估.
您将获得一个可以在代码中使用的本机Javascript对象.然后你可以做以下事情:document.write('Hello ' + result.firstname + ' ' + result.lastname)
以下是我在过去一年左右收集的一些有用的链接,这对我有所帮助.我希望他们也帮助你!
jQuery如何工作
jQuery插件
20个惊人的jQuery插件和65个优秀的jQuery资源
75(真的)有用的JavaScript技术
AutoCompleter教程
要记住的最重要的事情是:边做边学.实验.尝试新事物.制作一堆概念页面证明.使用Javascript,这真的是让你的脚湿透的最好方法.祝好运!
首先学习Javascript的基础知识.在深入了解深层抽象之前,了解如何使用它的内部结构非常重要.Mozila有一个很棒的 Javascript 资源,包括概述指南.
接下来,选择一个好的框架,它将帮助你进行大量的DOM操作,这是Javascript通常用于的.框架将为跨浏览器实现差异节省大量时间,并为开发提供良好的基础.这里有很多选择,你可以选择任何一个受欢迎的选择.就个人而言,我会选择jQuery作为其简洁的API和出色的插件库.
在此过程中,您将学习不同特征/符号的定义,例如JSON(表示Javascript Object Notation,用于在Javascript中定义可移植数据结构).对于您遇到的任何具体问题,您可以随时谷歌或回到SO;)