JavaScript中有大量的方法可供我们使用,详情可参考:http://jquery.cuishifeng.cn/这也同时导致我们不可能去记住每一个的用法,且开发者每天都在新添更多的方法,所以要想掌握所有方法并不是那么容易。我在学习的过程中也很头疼,不知道从何下手,下面是我学习之后的一些心得,希望可以帮助更多的人去掌握重点,更好的理解JavaScript。

  第一部分是元素的查找,这是我们在执行操作前的必经之路,如果找不到该元素,谈何而来的对其操作。所以是前提更是基本。很重要。

  之前在DOM的博客中已经介绍了基本的用DOM方式的元素操作,DOM v1:直接在标签中绑定。DOM v2:document.getElementById()。DOM v3:addEventListener();

  这里不再对其进行赘述,现在对JavaScript的相关查找方式进行总结:

    第一个是要介绍选择器,JavaScript官方定义:选择器允许您对元素组或单个元素进行操作。

      1.id      $('#i1') 对id进行定位

      2.class   $('.c1') 对类名进行定位

      3.tag    <div><a href='...'>asd</a></div>     $('a') 查找对应的标签

      4.combo  $('a,.c2,#i10')用逗号隔开,把所有的a,c2,i10都找到,取并集

      5.differ   $('.c2 a')用空格隔开,找c2子子孙孙中的a  $('.c2>a')大于号,只找到儿子(找一层)

      6.selector  :first  :last  :eq(index)索引位置要先测一下再来用  :gt(index):大于  lt(index)小于

      7.attribute  :自定义属性,查找具有该属性的所有标签$('[special_attribte=xxx]')用中括号[]筛选具有special_attribte=xxx的所有标签

      8.form    :input  $(':text')=$("input[type='text']")用分号找到input中所有text类;

    第二个要介绍的就是筛选器对选择权选择出来的数据进行筛选。

  1.$(this).next() 进行下一个筛选
                        --nextAll()

           --nextUntil()
                  2.$(this).prev() 进行上一个筛选
                        -- prevAll()

             --prevUntil()
                  3.$(this).parent() 进行父级筛选
                        --parents()找所有父级直到祖宗

           --parentsUntil()找到对应值为止
                  4.$(this).children() 进行子级筛选
                  5. $(this).siblings() 进行兄弟级筛选
                  6.$(this).find()子子孙孙找
                  7.$(this).eq(1) 找索引值为1的内容
                  8.hasclass(class)

    以上是主要的元素选择功能,下面介绍对所选择的元素进行的操作

    1. 文本操作
      1. $().text()提取,如果括号里有内容则是对元素内容进行设置
      2. $().val()提取,此方法跟text的用法相同,区别则在于text是取的是<div>text</div>中的text,而value是指<input value=.....>那一类别。如果不知道该用哪一种可以先行调试。
    2. 样式操作
      1. addClass()
      2. removeClass()
      3. toggleClass() 类切换效果,如果有则删除,没有则添加$selector.toggleClass(class,switch)如果有了switch则只能根据其布尔值而进行添加或删除操作
    3. 属性操作
      1. $('...').attr()  传一个参数是对标签中的属性进行操作,传两个参数是新增属性removeAttr()删除属性
      2. $('...').prop()    property是专用于checkbox和radio的,$('...').prop('checked') 返回True/False,设置$('...').prop('checked',false)
    4. 文档处理
      1. append()---prepend()    适用于div类
      2. after()---before()            适用于input类(value不再标签间的)
      3. remove                    删除某一行
      4. empty                            清空某一行,但保留结构
      5. clone                        克隆
    5. CSS操作
      1. $('#i1').css('样式名称','样式值')
    6. 转换操作
      1. jQuery对象[0] ==>DOM对象
      2. DOM对象       ==>$(DOM对象)
    7. 位置操作
      1. $(windows).scrollTop() 获取滚动条
                    $(windows).scrollTop(0) 设置滚动条
                    scrollLeft跟Top用法一样
      2. offset().left
                    offset().top 获取指定标签在html中的坐标离最近的position:relative

        1.               position()
                      <div style="position: relative">    //会找到这一层
                          <div>
                              <div id='i1' style='position:absolute;'></div>
                          </div>
                      </div>
      3. $('#i1').height()           #纯高度
                    $('#i1').innerHeight()      #padding+纯高度
                    $('#i1').outerHeight()      #padding+border+纯高度
                    $('#i1').outerHeight(true)  #padding+margin+border+纯高度
    8. 事件操作
      1. $().click()
                        $().bind('click',function)
                        $().unbind('click',function)
      2. $().delegate('a','click',function//委托的方式,在click时才会执行,而其他两种会在程序写好的时候就绑定好,此方法适用于会对程序的绑定部分有所修改的情况
                        $().undelegate('a','click',function
      3. $().on('click',function)
                        $().off('click',function)
                        对a标签绑定的优先,即先执行绑定内容,然后才会执行a标签中的href跳转,且是在返回值为true的情况
      4.  阻止事件:return false
                       1  当页面框架加载完毕后自动运行,默认执行的操作,这样会使网站加载速度更快(如果有大图的话)、
                       2  把js插件装进自执行里面可以避免全局变量冲突的问题
    9. jQuery的自定义扩展:
      1. $.extend({
                            'xxx':function(){
                                return 'good';
                            }
                        })
      2. $.fn.extend

          

      

JavaScript的基本操作(一)的更多相关文章

  1. JavaScript 数组基本操作

    简介 数组操作无论是在JavaScript中还是在其他语言中都是很常见.经常会用到的,现在我把JavaScript 数组基本操作整理一下,供大家参考学习.里边包含我自己的见解以及案例,希望能够帮助大家 ...

  2. javascript DOM基本操作

    javascript DOM基本操作 1.DOM(Document Object Model 文档对象模型) 2.节点: 文档节点:document 元素节点:html.head.body.title ...

  3. JavaScript 集合基本操作

    参考 MDN 集合 Array 1. 2种创建数组的方式 var fruits = [] ; var friuits = new Array(); 2. 遍历 fruits.forEach(funct ...

  4. 舌尖上的javascript数组和字符串基本操作

    Javascript数组基本操作 Javascript中的数组是一种特殊的对象,用来表示偏移量的索引是该对象的属性,索引可能是整数,然而这些数字索引在内部被转换为字符串类型,这是因为javascrip ...

  5. 【转载】JavaScript基础知识体系

    前言 最近总是有一种感觉,对于知识没有积淀,很多时候都是忘记了哪里就去查一下,比如JS这种语言,很是浪费时间,如果能够把这些知识形成知识体系塞进大脑,做到即用即取就好了,那么就可以借助思维导图来帮助我 ...

  6. JavaScript的字符串、数组以及DOM操作总结

    (一)JavaScript字符串操作 JavaScript的字符串就是用' '或" "括起来的字符表示,日常的学习中有时候需要对字符串进行相关的操作.例如要获取字符串某个指定位置的 ...

  7. JavaScript高级程序设计(第4版)知识点总结

    介绍 JavaScript高级程序设计 第四版,在第三版的基础上添加了ES6相关的内容.如let.const关键字,Fetch API.工作者线程.模块.Promise 等.适合具有一定编程经验的 W ...

  8. alpha6/10

    队名:Boy Next Door 燃尽图 晗(组长) 今日完成 学习了css的一些基本操作. 明日工作 抽空把javascript的基本操作学习一下 还剩下哪些任务 微信API还有京东钱包的API. ...

  9. JavaScript思维导图—DOM基本操作

    JavaScript思维导图-来自@王子墨http://julying.com/blog/the-features-of-javascript-language-summary-maps/ DOM基本 ...

随机推荐

  1. OpenCV亚像素角点cornerSubPixel()源代码分析

    上一篇博客中讲到了goodFeatureToTrack()这个API函数能够获取图像中的强角点.但是获取的角点坐标是整数,但是通常情况下,角点的真实位置并不一定在整数像素位置,因此为了获取更为精确的角 ...

  2. ASP.NET Core 使用 URL Rewrite 中间件实现 HTTP 重定向到 HTTPS

    在传统 ASP.NET 程序中,我们可以通过配置 IIS 的“URL 重写”功能实现将 HTTP 请求重定向为 HTTPS .但是该方法在 ASP.NET Core 应用中不再工作.在 ASP.NET ...

  3. Visual Studio 2017 Enterprise 发布 15.4 版本,离线安装包百度网盘下载。

    Visual Studio 2017 于2017年10月13日发布 15.4 版本.该版本包含多项生产力改进,支持 .NET Standard 2.0 ,并且可以开启 Xamarin Live Pla ...

  4. java8 - IO

    一.学习大纲: 1. 字符编码格式 2. 文件操作(实现文件的增.删.改.查等操作) 3. 目录操作(实现目录的增.删.改.查等操作) 4. 数据传输(实现对文件内容的读.写等操作) 二.关联类: 1 ...

  5. Opencv 330 如何裁剪图片中大的目标?

    main.cpp cv::Mat CropImage(cv::Mat& src, cv::RotatedRect& rotatedRect); cv::Mat MaxBoxSelect ...

  6. Qt 网络模块如何使用?

    1.网络模块介绍 类名 说明 中文 QAbstractNetworkCache The interface for cache implementations 缓存实现的接口 QNetworkCach ...

  7. java网络编程(6)——实现一个服务器把小写转大写

    实现一个服务器,通过我们发送的文本数据,然后转回大写放回,实现一个服务端与客户端的交互,用over来作为结束标记,具体代码如下: 客户端: package com.seven.tcp; import ...

  8. AES对称加密

    import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.Secre ...

  9. H3C三层交换机配置IP

    1.直接在物理端口上设置IP地址. int f1/0/1 port link-mode route #链路模式采用路由 ip add 192.168.10.1 24 ospf network0type ...

  10. ubuntu 14.04 分辨率调整 -- xrandr命令

    问题描述: 自己在安装ubuntu-kylin 14.04 TLS系统成功后,在调整分辨率的时候(系统设置--显示)发现分辨率的选项只有1024x768以及800x600两个选项,而台式机的外接显示屏 ...