• 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
      
  • 相关阅读:
    ElasticSearch 高级DSL查询语句
    docker改国内官方镜像
    step1: python & scrapy安装
    step7: 输出到json文件
    step6: item与pipeline
    step5: 编写spider爬取
    step4: Xpath的使用
    step3: 创建jobbole爬虫
    step2: 爬取廖雪峰博客
    解决WAS更新web.xml文件不生效的问题(web_merged.xml是罪魁祸首)
  • 原文地址:https://www.cnblogs.com/oden/p/10170408.html
Copyright © 2020-2023  润新知