zoukankan      html  css  js  c++  java
  • 使用dojo.connect()添加事件的注意事项

    使用dojo.connect()添加事件处理器是很方便的,不用再考虑跨浏览器的问题了。但要想正确地使用这个方法,仍然要注意几个问题:
            1、用dojo.byId()获取的是dom元素,而用dijit.byId()获取的是dojo widget,这两点是有根本不同的。
            2、事件名称的大小写很关键,如果对dom元素添加事件处理器,事件名称要小写,例如click事件,可以用click或者on

    click都行,但一定要把c字母小写;如果对dojo widget添加事件处理器,事件名称必须符合dojo的规范,例如click事件,一定要写成onClick,字母o是小写,而字母c一定要大写。
            3、如果要对某个页面元素添加事件处理器,一定要根据这个元素是dom元素还是dojo widget,分别使用dojo.byId()或dijit.byId()来获取元素引用。如果乱用,那么结果可能会添加失败或出现不正常的情况。
            注意以上这几个问题,正确使用好dojo.connect()方法是没有问题的。
            例一:
    <button id="btn">Click Me!</button>
    <script type="text/javascript">
            dojo.connect(dojo.byId('btn'), 'onclick', null, handler);
    </script>
            例二:
    <button id="btn" dojoType="dijit.form.Button" label="Click Me!"></button>
    <script type="text/javascript">
            dojo.connect(dijit.byId('btn'), 'onClick', null, handler);
    </script>
    -------------------------------------------------------------------------------------------------------
    注:本文转载于:http://blog.163.com/ma13481280654@126/blog/static/732525372011101715346673
  • 相关阅读:
    【兼容性】IE不支持日期字符串转换为日期对象
    tinydate.js[v0.2] 优化了调用方式
    tinydate.js[v0.1]关于Javascript Date的工具
    【兼容性】IE10不支持参数默认值即可选参数
    【兼容性】IE10不支持lamda表达式
    创建第一个core项目(netCore学习笔记1)
    .net(C#)在Access数据库中执行sql脚本
    (Lesson2)根据类名称和属性获得元素-JavaScript面向对象
    UWP Tiles
    UWP Ad
  • 原文地址:https://www.cnblogs.com/GISQZC/p/5374514.html
Copyright © 2011-2022 走看看