zoukankan      html  css  js  c++  java
  • angular2中的DOM操作之如何使input获取焦点

    找了半天才找到如何在angular2中操作模板中的DOM:

      1、

      2、也可以通过传参数$event(说到参数多说一句:函数调用时传的实参个数不能超过形参个数,允许小于形参个数),然后通过$event.target获取到元素标签,再通过节点关系,如:parentNode,children等;

      3、注意input获得焦点的事件focus(),当输入框由隐藏变为显示的时候同时让输入框获得焦点时不能实现的,因为两者是同时进行的,在input执行focus方法想要获得焦点的时候其实还没有显示出来,只有当显示出来之后才可以获得焦点,我看网上很多地方都是用了一个timeout让iinput延迟使得显示过后才执行focus方法,但是这样很不科学,有人可能会问了,这里要是有个onshow事件不就可以在input显示后触发onshow事件就可以了吗,我想说的是教程上说这个onshow方法仅有火狐浏览器支持,但是我在火狐上测试发现也不支持,综合考虑,可以通过控制input的opacity来达到一个假的显示隐藏;因为透明度为0隐藏的时候并不会影响input该有的交互效果,所以能够执行focus方法使其获得焦点,只是它opacity为0你看不见罢了;------》(这条属于原创,目前没有在网上查阅到此解决方案);

  • 相关阅读:
    mysql字符集和数据库引擎修改方法
    android 之GridView和ImageView教程
    把php代码保存到php文件实现方法
    extjs gridpanel 操作行 得到选中行的列
    SQL 分页
    vs 调试 慢 解决办法
    JS获取屏幕高度
    C#事件以及委托
    ExtJs 3.0 不兼容 IE9
    ASP.NET 获取客户端IP (无视代理)
  • 原文地址:https://www.cnblogs.com/guoqiang-QI/p/8251596.html
Copyright © 2011-2022 走看看