zoukankan      html  css  js  c++  java
  • JavaScript高级

    1.对象的高级使用
    • 对象的key为string,value为任意类型

      var obj = {
          name : 'aaa',
          'person.age' : 18
      }
      
      // 访问
      obj.name | obj['name']
      obj['person.age']
      
    • 对象的属性可以任意添加于删除

      var obj = {
          name: 'aaa'
      }
      
      // 删除
      delete.obj.name
      
      // 添加
      obj.age = 18 // 如果key已经存在,那么就是修改,不存在就是添加
      
      // 注意:获取的页面元素也可以任意添加/删除属性
      
    2.页面标签全局属性操作
    // 获取类名为ele的页面元素ele
    
    var ele = document.querySelector('.ele');
    
    // 获取页面标签ele的alert全局属性值,如果没有该全局属性值为null
    
    ele.getAttribute('alert');
    
    // 修改ele全局属性的值,或者增添该全局属性并赋予相应的值
    
    ele.setAttribute('attr_key','attr_value');
    
    // 注意:一般应用场景,结合css的属性选择器完成样式修改
    
    // 属性也可以用来获取页面元素,采用css语法
    
    // eg: a = document.querySelector('[alert]')
    
    3.事件
    • 事件的绑定
      // 方式一:on事件
      
      var box = documeng.querySelector('.box')	// 获取页面元素
      
      box.onclick = function(){
          code
      }
      
      // 只能绑定一个实现体,如果有多次绑定,保留最后一次,前面的会被覆盖掉
      
      // 取消用:box.onclick = null
      
      // 方式二:直接用事件
      
      var fn1 = function(){}		// 钩子函数
      
      var fn2 = function(){}
      
      box.addEventListener('click',fn1)
      
      box.addEventListener('click',fn2)
      
      // 可以绑定多个实现体,如果绑定了多个,按顺序依次执行
      
      // 取消事件绑定:box.removerEventListerner('click',fn)
      
      // 了解:第三个参数决定了冒泡的顺序(子父级谁先相应事件) 省略默认为false
      
  • 相关阅读:
    js常用框架原理
    移动端input解决键盘问题 方案1
    jq大体架构。先记录再慢慢剖析
    把图片存储 canvas原生API转成base64
    清除浮动的6中方法
    window.location.hash属性介绍
    前端性能优化之js,css调用优化
    数组中的对象,判断是否有重复值、
    [Python] Pitfalls: Be Careful with os.chdir
    Changing the Color of Linux ls Command 改变Linux的ls命令显示的颜色
  • 原文地址:https://www.cnblogs.com/oden/p/10170408.html
Copyright © 2011-2022 走看看