项目升级感悟(键盘事件、渐变效果、title图标添加)

这段时间公司要进行前端升级,要将原先的Extjs4.2版本升到最新的Extjs6.0.1版本。于是,我查看了公司系统之前写的代码(毕竟我也才来4个月,对之前的大牛的写的代码还不熟悉)。在看前人写的代码时,我发现了有一些比较好,且比较通用的代码,现分享给大家:

1.禁止键盘按钮事件(有很多业务场景,比如“禁止输入负数”、“禁止输入小数”等等,而我们下面介绍的是"按回删键防止浏览器页面回退",这是一个普遍存在而且非解决不可的Bug)

//处理键盘事件 禁止后退键(Backspace)密码或单行、多行文本框除外   
    function banBackSpace(e){  
        //alert(event.keyCode)  
        var ev = e || window.event;//获取event对象     
        var obj = ev.target || ev.srcElement;//获取事件源       
        var t = obj.type || obj.getAttribute('type');//获取事件源类型       
        //获取作为判断条件的事件类型   
        var vReadOnly = obj.readOnly;  
        var vDisabled = obj.disabled;  
        //处理undefined值情况   
        vReadOnly = (vReadOnly == undefined) ? false : vReadOnly;  
        vDisabled = (vDisabled == undefined) ? true : vDisabled;  
        //当敲Backspace键时,事件源类型为密码或单行、多行文本的,    
        //并且readOnly属性为true或disabled属性为true的,则退格键失效    
        var flag1 = ev.keyCode == 8 && (t == "password" || t == "text" || t == "textarea") && (vReadOnly == true || vDisabled == true);  
        //当敲Backspace键时,事件源类型非密码或单行、多行文本的,则退格键失效      
        var flag2 = ev.keyCode == 8 && t != "password" && t != "text" && t != "textarea";  
        //判断      
        if (true)   
            event.returnValue = false;//这里如果写 return false 无法实现效果   
    }
    //禁止后退键 作用于Firefox、Opera  
    document.onkeypress = banBackSpace;
    //禁止后退键  作用于IE、Chrome  
    document.onkeydown = banBackSpace;

2.html元素渐变效果js(当然,如果用jquery,就是一句话的事,但是我也是今天才看到原生的写法,弄懂这个逻辑感觉挺爽的)

var speed = 1;
	var timer = null;
	var alpha = 30;

	function showIt(s) {
		startrun(s, 95);
	}

	function closeIt(s) {
		startrun(s, 0);
	}

	function startrun(s, target) {
		var ss = window.document.getElementById(s);
		clearInterval(timer);
		timer = setInterval(function() {
			if (target > alpha) {
				speed = 5;
			} else {
				speed = -5;
			}

			if (alpha == target) {
				clearInterval(timer);
			} else {
				alpha = alpha + speed;
				ss.style.filter = 'alpha(opacity=' + alpha + ')';
				ss.style.opacity = alpha / 100;
			}
		}, 30)
	}

3.给Html<title>加上左侧显示的图标(这个因为之前没考虑过这个东西,很惭愧。。今天看到了这样的<link>还感觉很奇怪,百度后才发现原来是这么一个东西,涨姿势了~)

<link rel="icon" href="/favicon32.ico" type="image/x-icon" />
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
<!--图片一般放在项目根目录-->


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值