• JQuery优化之 -- 正确使用选择器


    一、访问DOM元素最快速度排序:

    1. 通过ID
    2. 通过元素标签(tag)
    3. 通过类别(Class)

    二、从性能方面选择器可以分为三类

      1)ID和元素标签选择器,如下面代码所示:

    $('#id').htm();
    $(input').css('background': 'red');

      在执行这类选择器的过程中,JQuery内部将自动调用浏览器的原声方法,且浏览器都支持这些方法,因此该类选择器在执行时,速度最快;

      2) 元素类型选择器

    $('.class').html("");

      在执行该类选择器的过程中,由于各类浏览器对该类选择器的原生方法不尽相同,如IE系列浏览器中,就无法调用类别的原生方法,速度较慢,而FireFox、Chrome、Safari、Opera浏览器都可以直接调用getElementByClassName()原生方法,因此速度要快很多

      3) 伪类型和属性选择器,如以下代码所示:

    $(":input").length; //获取所有input类型的元素总数
    $("div[title='A']").html();

      在执行该类选择器的过程中,由于浏览器没有对应的原生方法,因此速度最慢;建议尽量减少使用伪类型及属性选择器去定位页面元素,少量在遍历时使用选择器,从而提升页面执行速度,不断优化代码的性能;

    注意事项:

    1. 虽然ID号访问页面中的元素最快,但是避免重复修饰,即使用ID号修饰ID号,错误代码如下: 
      var eleName = $('#divTip #divShow');
    2. 避免使用tag或class来修饰ID号,这样代码先执行遍历,后进行匹配,其错误代码如下
      var eleName = $(".myClass #divShow");

      或者

      var eleName = $("div #divShow");
    3. 如果是通过元素的属性访问,尽量使用tag来修饰进行访问,优点:加快访问速度,正确代码如下:
      var eleName = $("div[title='tmp']");
  • 相关阅读:
    Hibernate4学习day0--hibernate封装--注解--单元测试
    Hibernate4学习day01--简介--基本配置
    java基础day13---引用数据类型
    java基础day14---static关键字-----继承
    java基础day12---this 关键字-----参数传递
    day05 Struts2文件上传和下载---防重复提交
    java基础day11---空指针异常----引用类型--自定义类型赋值--封装
    java基础的第二轮快速学习!day10
    Struts2,大爷你好!第四天
    java基础的第二轮快速学习!day09
  • 原文地址:https://www.cnblogs.com/slovey/p/9099977.html
Copyright © 2020-2023  润新知