JQuery基础

本文详细介绍了jQuery的基本概念、安装方法、入口函数、DOM操作、选择器、样式设置、属性操作等内容,强调了jQuery的高效和易用性,如通过链式语法和选择器简化JavaScript代码,以及丰富的插件生态。同时,文章提到了jQuery中获取和设置元素样式、添加和删除类名、处理DOM节点以及属性操作的方法,展示了如何在实际开发中运用jQuery提高开发效率。
摘要由CSDN通过智能技术生成

jQuery

简称:"JQ"

jQuery是一个快速、简洁的JavaScript框架(库,是继Prototype之后又一个优秀的JavaScript代码库(框架)于2006年1月由John Resig发布)

jQuery设计的宗旨是“write Less,Do More”(写的少,干得多)

jQuery封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互

jQuery的核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的CSS选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。jQuery兼容各种主流浏览器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等。

插件:是封装好的一个独立的功能代码,可供开发人员完成某个功能时直接使用的

库:是将很多功能代码封装到一起的,并不能帮助我们完成一整个项目

框架:可以帮助我们完成一整套的项目开发

一、jQuery起步

官网:jQuery

手册:离线版(.chm或者PDF)

在线版:jQuery插件库-收集最全最新最好的jQuery插件

1.1 安装jquery

a. 下载jQuery库文件

从jq22.com网站上边下载

b. 导入jQuery库文件

 <!-- 第一种方法: 将jquery文件下载到本地再引入 -->
   <script src="./jquery-3.5.1.min.js"></script>
  <!-- 第二种:使用cdn的方式 在线的juqery文件   要求电脑必须连网   会导致网页加载速度变慢-->
    <script src="https://ajax.aspnetcdn.com/ajax/jquery/jquery-3.5.1.min.js"></script>

1.2 入口函数

又称作 预加载函数

<script>
// 第一种写法
$(document).ready(function(){
  // 在这里写你的代码...
});
   // 第二种写法
$(function(){
    // 在这里写你的代码...
})
</script>

JavaScript中获取html元素的方法

document.getElementById()

document.getElementsByTagName()

document.getElementsByName()

document.getElementsByClassName()

jQuery中获取对象的方法

$()

1.3 jQuery获取DOM元素

$() 来获取对象(DOM元素)

面试题

js的dom对象和jQuery中的Dom对象 如何互相转化

js dom对象 转化为jquery dom对象 : 只需给js dom对象加上$()

jquery dom对象如何转化为js的dom对象: jq对象[下标]

二、选择器

选择器就是帮助我们来选取元素的,比如说在css中的选择器,选择好元素后进行样式的修饰,在Jquery中选择器选好元素后,是需要进行DOM操作的

大部分的css选择器都可以应用到jQuery选择器中

CSS的选择器分类

  • 基础选择器

    • *号选择器

    • 标签(元素)选择器

    • 类选择器 .类名

    • id选择器 #id值

  • 复合选择器

    • 后代选择器 E F 查找的是E元素里边的F元素

    • 子集选择器 E>F 查找的是E元素的子集F元素

    • 紧邻兄弟选择器

    • 同辈兄弟选择器

    • 多重选择器

  • 伪类选择器

    • :hover

    • :active

    • :visited

    • :link

    • :first-child

    • :last-child

    • :nth-child()

    • :not()

    • :nth-of-type()

  • 伪对象选择器

    • ::before

    • ::after

    • ::first-line

    • ::first-letter

三、样式

  1. css() 为dom对象设置样式

    第一种用法: css(属性名称,属性值) 一次只能设置一个样式

    <div class="demo">
            设置一条样式
    </div>
    <script>
    $('.demo').css('color','blue').css('background-color','red')
    </script>

    第二种用法:css({属性名称:属性值,属性名称:值....})

    <div class="demo">
            设置一条样式
    </div>
    <script>
        // 写法一
     var s =  { 
         color:'blue',
         backgroundColor:'cyan',
         fontSize:'24px'
           }
         $('.demo').css(s)
       // 写法二 
       $('.demo').css({ 
         'color':'blue',
         'background-color':'cyan',
         'font-size':'24px'
           }) 
    </script>

    四、DOM操作

  2. 1.append() 向匹配到的父元素末尾追加子元素

     <div class="add">append</div>
    <script>
        /*
    	 1. 创建dom元素
         jQ:  $('<a href="http://www.baidu.com">百度</a>')
        2. 获取父元素
        $('.add')
        3. 使用append()追加
        父元素对象.append(要追加的子元素)
            */
    var obj = $('<a href="http://www.baidu.com">taobao</a>')
    $('.add').append(obj)
    </script>

    2.appendTo() 把子元素追加到父元素中

    <div class="add">append</div>
    <script>
    var obj = $('<a href="http://www.baidu.com">taobao</a>')
    obj.appendTo($('.add'))
    </script>

  3. prepend() 向父元素的开头添加子元素

    <div class="add">prepend</div>
    <script>
    var obj = $('<a href="http://www.baidu.com">taobao</a>')
    $('.add').prepend(obj)  
        //结果: <div class="add"><a href="http://www.baidu.com">taobao</a>prepend</div>
    </script>

  4. prependTo() 元素前置到另一个、指定的元素元素集合中。

    <div class="parent">宝剑锋从磨砺出</div>
        <span id="child">梅花香自苦寒来</span>
    <script>
        $(function(){
            $('#child').prependTo($('.parent'))
            // 效果:<div class="parent"> <span id="child">梅花香自苦寒来</span>宝剑锋从磨砺出</div>
        })
    </script>

  5. remove() 移出匹配到的元素

    <p>苹果01</p>
    <p class="two">苹果02</p>
    <p>苹果03</p>
    <script>
    //$('p').remove()   // remove()方法不传递参数的情况下  表示删除匹配到的所有元素
    $('p').remove('.two')   // 移除类名等于two的p标签
    </script>

    五、属性

  6. 1.attr() 获取或者设置属性

     <div class="demo" title="这是一个测试代码">attr方法 </div>
    <script>
    // attr()  获取匹配元素属性的值
        var res = $('.demo').attr('title')
    //    attr()   设置匹配元素的属性值
        $('.demo').attr('title','this is a test code')   // 只修改一个属性值
        $('.demo').attr({name:'code',id:'test'})   // 设置多个属性
    </script>

    2.removeAttr() 移除属性

    <div class="demo" title="这是一个测试代码" id='test'>attr方法 </div>
    <script>
    $('.demo').removeAttr('id')
    </script>

    注意:只接受一个参数

  7. 3.addClass() 添加类名

    <div id="demo"> 白日依山尽</div>
    <script>
           $(this).addClass('active')
    </script>

    4.removeClass() 移出类名的

     <div id="demo" class='active'> 白日依山尽</div>
    <script>
           $(this).removeClass('active')
    </script>

    5.toggleClass() 当某个类名存在时则删除,不存在时则添加

     <div id="demo"> 白日依山尽</div>
    <script>
         $('#demo').click(function(){
           $(this).toggleClass('active')
    </script>

    6.html() 获取或者设置匹配元素的内容(包含标签)

    <div class="content"><span>作者:王之涣</span><br>白日依山尽</div>
    <script>
        $(function(){
            // html()    获取元素的内容    和JavaScript中的innerHTML相同的
            var con = $('.content').html()
            // console.log(con);
            // html()  设置匹配元素的内容
            $('.content').html('去<a href="http://jd.com" target="_blank">京东</a>网购')
        })
    </script>

    7.text()

    <div class="content"><span>作者:王之涣</span><br>白日依山尽</div>
    <script>
        $(function(){
            // text()    获取元素的文本内容不包含标签    和JavaScript中innerText的相同的
            var con = $('.content').text()
            // console.log(con);
            // text()  设置匹配元素的文本内容
            $('.content').text('去<a href="http://jd.com" target="_blank">京东</a>网购')
        })
    </script>

    注意:text()和html() 最大的区别,text()只处理文本内容,不能识别标签,而html() 方法可以识别标签

    text()和html() 方法不能够用于获取或者设置表单标签的值,除了button和textarea这两个标签之外

  8. val() 获取或者设置表单标签的值

     <input type="text" id="user" value="zhangsan">
    <script>
        $(function(){
            //    val()  获取表单标签的值
            var res = $('#user').val() 
            // console.log(res);
            //  val()   设置匹配元素的value值
            $('#user').val('张三') 
        })
    </script>

    1. prop() 设置或者获取元素的属性值

    2. removeProp() 移出属性

  9. attr() 和prop()的应用场景

    prop()方法经常用于标签属性值有true和false的时候使用,例如:checked、seleted、readonly、disabled

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值