‘壹’ 如何从前端触发nodejs/express事件
前端:$('.button').on('click', function(e) {
// 向server "/buttonClicked" 发送一个get request
// 根据实际情况, 此处也可以是$.post();
$.get('/buttonClicked', function(data) {
// 此处的callback function中的data为server返回的数据(没有数据也可)
console.log(data);
};
});
后端express:app.get('/buttonClicked', function(req, res) {
res.send(data); // 此处发送的data, 即为前端中callback里将会得到的data, 如不需要则可以省略这一行
// 这里开始写你需要的东西,比如更新数据库之类的...
res.end();// 如果不执行end(), 那么前端网页则会一直等待response
});
同理, 如果前端使用的post, 那么此处也应该为:app.post('/buttonClicked', function(req, res) {
res.send(data); // 此处发送的data, 即为前端中callback里将会得到的data, 如不需要则可以省略这一行
// 这里开始写你需要的东西
res.end();// 如果不执行end(), 那么前端网页则会一直等待response
});
另外, 在express 4.x中, 如果使用了router:var router = express.Router();
那么需要将app替换为router:router.get('/buttonClicked', function(req, res) {
res.send(data); // 此处发送的data, 即为前端中callback里将会得到的data, 如不需要则可以省略这一行
// 这里开始写你需要的东西
res.end();// 如果不执行end(), 那么前端网页则会一直等待response
});
‘贰’ html的事件都是js代码么还可以是什么
目前浏览器交互只有两种语言,JS与VBScript两种,一些动态效果不是用JS写的,就是用VBSscript写的。
使用JQuery,只是JS的一种封装形式,可以理解为是JS的一个框架或是类库,它本质是JS语言。
当前使用JS的程序员和web工程师较多,主要原因还是js的发展,比如有类似于JQuery等一些知名的框架可以使用,当然不乏有很多web前端封装自己的类库,而不是直接使用JQuery的,还有类似的ExiJS等封装。而这方面在VBS上倒没有那么多封装,所以感觉上VBS不入主流,事实上两者同样重要.但只有掌握其中一个就行了!
‘叁’ 对Web前端发展贡献最大的人物和事件有哪些
下面我们分析一下前端发展历程:
首先说的是布兰登.艾奇,我们的js之父,他的故事太传奇了,不做多说。道格拉斯.克罗克富德js大宗师。这两位是我们前端发展的最重要的推动人物。
随着2009年js的基础类库的完善,以下是主要做出突出贡献的人:
1、约翰.瑞森,我们的jQuery之父。
2、山姆.史蒂芬森, Prototype的创始人,除了有prototype之外,他还开发过很多开源软件,比如:rbenv,sprockets等。
ECMAScript规范的执行引起了浏览器大战,各大浏览器开始瓜分IE市场占有率,其中火狐,谷歌取得大胜。
此时Ryan Dahl 的node.js和3gmobile正在慢慢浮出水面,他们的出现,使前端真正的出现了繁荣景象。
2010年前端相对风平浪静,但是安卓智能机的出现,使将来移动端风起云涌。这年w3c对web性能成立了专门的工作小组,人们更多的开始关注性能和体验问题。
2011年h5的抗起了大旗,让flash堪忧。语义明确的标签体系、简洁明了的富媒体支持、本地数据的储存技术、canvas 等等各类技术被广泛应用。很多开发者面临一项技术选择,flash OR H5,但Adobe从11.1开始就不在更新,投身于H5,这意味着flash技术凋零。
2012年,响应式开发,工程化推进,随着手机厂商的各种骚动,为了快速占有市场,提高性价比,出现了价格低,性能好的一大批手机,随之而来的是H5借着这股风快速的在web开发颤动了起来。移动端的框架开发不亚于PC对多个浏览器的支持,这一年萌生了众多移动框架,比如:Sencha Touch/Zepto.js/JQ Mobile 等,相对 PC 端框架,它们更加轻便。
‘肆’ web前端的事件原理是什么呢
在web控件发生事件时,客户端采用提交的形式将数据交回服务端,服务端先调用Page_Load事件,然后根据传回的状态信息自动调用服务端事件自动传回是当我们在点击客户端控件时,采用提交表单的形式将数据直接传回到务端
只有通过自动传回才能实现服务端事件的机制,如果没有自动回传机制就只能调用客户端事件,而不能调用服务端事件
‘伍’ 前端开发中 事件后绑定什么意思
绑定你想要的特效!
‘陆’ 前端面试 什么是事件
js之所以采用单线程,原因是一开始设计的时候不想让浏览器变得太复杂,因为多线程需要共享资源、且有可能修改彼此的运行结果,对于一种网页脚本语言来说,这就太复杂了。比如,假定js同时有两个线程,一个线程在某个DOM节点上添加内容,另一个线程删除了这个节点,这时浏览器应该以哪个线程为准?在Java中会使用锁来解决这种竞态条件,而js并不想这样来解决。 当然,单线程模型带来了一些问题,主要是新的任务被加在队列的尾部,只有前面的所有任务运行结束,才会轮到它执行。如果有一个任务特别耗时,后面的任务都会停在那里等待,造成浏览器失去响应,又称“假死”。为了避免“假死”,当某个操作在一定时间后仍无法结束,浏览器就会跳出提示框,询问用户是否要强行停止脚本运行。
‘柒’ 前端开发的数据,事件,方法是什么关系
数据最终要结合html,css展示在页面上
事件 可以理解成操作交互,操作数据,触发方法。
方法 是 更新某模块数据或者样式,可以通过绑定事件后触发
‘捌’ 前端的touch事件有哪些呢
// 手指在Body中点击时的记录var startX, startY;$("body").on("touchstart", function(e) { startX = e.originalEvent.changedTouches[0].pageX; // 记录 最初点击时第一个触摸点的x坐标 startY = e.originalEvent.changedTouches[0].pageY; // 记录 最初点击时第一个触摸点的y坐标});// 阻止touchmove时的body默认事件$('body').on('touchmove', function(e) { e.preventDefault();
});// 记录/操作 当手指离开的操作 $('body')在操作的时候换成具体的选择器如$('#box')$("body").on("touchend", function(e) { var moveEndX = e.originalEvent.changedTouches[0].pageX; // 手指离开时的x坐标 var moveEndY = e.originalEvent.changedTouches[0].pageY; // 手指离开时的y坐标 var X = moveEndX - startX; // 离开时的x坐标 - 开始触摸的x坐标 = 横向偏移值 var Y = moveEndY - startY; // 离开时的y坐标 - 开始触摸的y坐标 = 纵向偏移值 if ( Math.abs(X) > Math.abs(Y) && X > 0 ) { // 从左到右 alert("left 2 right");
} else if ( Math.abs(X) > Math.abs(Y) && X < 0 ) { // 从右到左 alert("right 2 left");
} else if ( Math.abs(Y) > Math.abs(X) && Y > 0) { // 从上到下 alert("top 2 bottom");
} else if ( Math.abs(Y) > Math.abs(X) && Y < 0 ) { // 从下到上 alert("bottom 2 top");
} else{ alert("just touch");
}
});
‘玖’ 如何在前端调用后端的事件
如果你自己能包揽前后台,理解这个肯定没问题。
网站能运行,说白了是这么几步。 客户端请求--》服务端响应HTML.--》用户在网页上进行操作(即请求) --》服务器响应操作(新页面或ajax) .。
前端美工所需要的js,css,jquery,pic等等内容,都是服务端响应出去的。
除此之外,都是后端的的事情。
关于html内容。可以用服务端模版,也可以用客户端模版。差别不大。
‘拾’ 前端js点击事件怎么取消捕获
如果是通过window.onclick = function(){}监听的话可以通过window.onclick = undefined 取消监听;
如果是通过window.addEventListener('click', function(){})监听则可以通过window.removeEventListener('click')取消监听。