前一阵子发现了简书这一个博客社区,给我的第一个印象就是简约,清爽。
本来打算在第一遍博文上写一点“人生道理”以鼓励一下自己,不过这些虚的话还是不要放着这种公众博客上,以后在这就记录一下平时看到的或者用过的小东西吧。
这两天实训在做一个oa系统,坑爹的老师坑爹地要求前台只能用静态页面,呵呵,我基本上没怎么写过js,又要深入浅出javascript了。前后台选用json做数据存储+springMvc框架,除了js我觉得还是挺好的。
十来个小时的js编写经验,总结一下所遇到的问题及解决方案:
动态生成的html元素如何动态地绑定事件
动态生成html元素谁都会,使用jquery的append,after方法可以轻松在制定位置添加html内容。那么如果动态生成的html元素需要绑定事件呢,简单的方法就是在$("#id").append() 后重新绑定,但如果需要重复生成同类型的html元素,则需要重复地绑定。学了jquery发现了jquery.live()函数非常好用,live() 方法为被选元素附加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。就是说通过 live() 方法附加的事件处理程序适用于匹配选择器的当前及未来的元素。
如:
$(".onechange").live("click",function(){
$(this).parent().find(".oneinput").val($(this).parent().find(".onetitle").text());
$(this).parent().find(".onetitle").hide();
$(this).parent().find(".oneinput").css("display","inline").focus().select();
});
后来发现live无法绑定blur方法,经过查找网上资料,发现1.3.1之前的版本是无法实现,要实现绑定blur方法则需要用到jquery1.4.1之后的版本。