jQuery的高级阶段
Advancing Stage in jQuery
我有以下代码,我对JavaScript比较陌生,所以谁能告诉我为什么它没有推进到第1阶段+告诉我它是如何完成的?
var textContainer = '#text';
var inputLine = 'input';
var username = null;
var stage = 0;
$(function(){
if(0 == stage){
$(function(){
$(textContainer).text('What is your name?');
$(inputLine).focus();
$(inputLine).keypress(function(e){
if (e.keyCode == 13 && !e.shiftKey) {
e.preventDefault();
username = $(this).val();
$(this).val('');
stage = 1;
}
});
});
}
if(1 == stage){
$(textContainer).text('Hi there, ' + username + '.');
}
});
你在那里的东西没有多大意义,所以我猜这就是你想做的:
$(function(){
var textContainer = $('#text'),
inputLine = $('input');
textContainer.text('What is your name?');
inputLine.focus().on('keyup', function(e){
if (e.which === 13) {
e.preventDefault();
textContainer.text('Hi there, ' + this.value + '.');
this.value = "";
}
});
});
小提琴
在stage
被设为0之后,它就不可能是0以外的任何东西了吗?
事件处理程序内部发生的事情"稍后"发生,因此在事件处理程序之后检查stage
仍然会给您…等一下....零?
相关文章:
- 在页面上加载高级jQuery版本准备就绪
- 如何在高级编译模式下使用 Google Closure 编译器编译 jQuery UI 小部件
- Jquery 元素的高级过滤
- 有人可以对.d.ts文件的用途以及如何将该文件用于jQuery进行高级解释吗?
- jQuery菜单,在它的不同阶段对菜单的不同控制
- 使用通配符的jQuery高级选择器
- jQuery-返回按钮或等待,您将获得自动重定向-高级返回按钮
- 在这个jQuery自动高级脚本中,如何延迟触发滑块的第一次点击
- Javascript/jquery高级重定向
- 高级jQuery选择器,需要一个jQuery忍者来回答
- jQuery高级选择器故障
- jQuery的高级阶段
- 高级jquery/flash播放器的youtube视频
- jQuery邮件验证和recaptcha在两阶段表单提交过程中不工作
- 如何打开和关闭一个边栏与jQuery高级设置
- 使用jQuery迭代JSON数组[高级自定义字段和JSON API创建的WP坐标]
- 高级jQuery粘边栏
- 高级jQuery弹出窗口
- jQuery多元素高级选择器
- 学习高级javascript的资源,比如为jquery编写的东西,mootools