由于您是 Javascript 开发新手,我将尝试相关示例。
您可以在 StackOverflow 上对问题进行投票。你的投票动作被发送到服务器,并在那里记录下来。如果没有 AJAX(和其他一些技术),整个页面都需要为该操作刷新。 AJAX 解决了与服务器异步通信的问题,无需重新加载整个页面。
jQuery 是一个库,可以方便地访问常见的 Javascript 任务,例如 DOM 操作、AJAX 处理等。jQuery 还隐藏了浏览器差异并为最终用户提供了一致的界面。要说明这两点,请参阅以下示例:
查找页面上的所有 div 元素
// Javascript
var divs = document.getElementsByTagName("div")
// jQuery
$("div")
向按钮添加点击事件处理程序(说明浏览器差异)
使用纯 Javascript,最好创建一个跨浏览器的方法来添加事件,因为您肯定不想每次都编写此代码。来源-http://www.scottandrew.com/weblog/articles/cbs-events
function addEvent(obj, evType, fn, useCapture){
if (obj.addEventListener) { // standards-based browsers
obj.addEventListener(evType, fn, useCapture);
return true;
} else if (obj.attachEvent) { // IE
var r = obj.attachEvent("on"+evType, fn);
return r;
} else { // some unknown browser
alert("Handler could not be attached");
}
}
一旦设置完成(仅限一次性),您就可以使用此功能将事件添加到任何元素。
// Javascript
var button = document.getElementById("buttonID");
addEvent(button, "click", function() { alert("clicked"); }, false);
// jQuery (contains code similar to above function to handle browser differences)
$("#buttonID").click(function() { alert("clicked"); });
AJAX 是 Javascript 的一部分,它本身并不是一项单独的技术。当您需要从服务器发送/接收数据时,您可以使用 AJAX 来避免进行整页刷新。
jQuery、MooTools、Dojo、Ext.JS、Prototype.JS 和许多其他库提供了围绕 Javascript 的包装器,以抽象出浏览器的差异,并提供更容易使用的界面。问题是你想自己做所有这些重新工作吗?如果您不确定您可能需要做哪些返工,请研究常见任务的纯 Javascript 示例,例如 AJAX 调用、DOM 操作、事件处理,同时抽象出浏览器的怪癖,并将这些怪癖与 jQuery 等库中的示例进行比较,这可能是一个好的开始。