发表于: 2017-04-02 22:23:09
1 1271
今天完成的事情:由于前面任务忘了写冷启动页面,也没有把第一个页面关联到任务2,所以 提交了好几次任务2都过不了。今天完成了冷启动页面(关于这个冷启动,我只是把页面在规定秒数后自动跳转。。真正的应该是有个进度条什么的 加载完成才跳转吧?),以及任务3都静态页面。还修改了我任务2的页面问题,师兄说了在手机端下不能出现滚动条。
明天计划的事情:明天先找师兄问明白监听都问题,在看一下sessionlcoal,因为页面2只需要传2个参数到页面三,所以我在想到底使用哪种传参方法比较好。再梳理一下对于页面3的逻辑问题。
遇到的问题:关于师兄说的监听 我试着写了下addEventLister 没效果,可能我写都不对,明天去请教一下师兄。
补充一下,我把我的变量拿到全局,onchange事件就能正常操作了。。。本来我想使用oninput事件的 ,发现如果使用oninput 你输入个delete键 都会alert错误。
所以现在的问题应该说传参跟逻辑的问题。
收获:
onchange/onkeyup/onkeypress/onkeydown实现,但是这存在着一些不好的用户体验。比如onchange事件只在键盘或者鼠标操作改变对象属性,且失去焦点时触发,脚本触发无效;而onkeydown/onkeypress/onkeyup在处理复制、粘贴、拖拽、长按键(按住键盘不放)等细节上并不完善。
onpropertychange属性可在某些情况下解决上面存在的问题,不用考虑是否失去焦点,不管js操作还是键盘鼠标手动操作,只要HTML元素属性发生改变即可立即捕获到。遗憾的是,onpropertychange为IE专属的。其他浏览器下如果想要实现这一实时监听的需求,就要用到html5中的标准事件oninput,不过IE9以下的浏览器是不支持oninput事件的。
所以我们需要综合oninput和onpropertychange二者来实现文本区域实时监听的功能。
评论