Blogger Information
Blog 48
fans 0
comment 0
visits 40369
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
0917-jQuery中的基本操作
3期-Shawn的博客
Original
758 people have browsed it

1. 编程:$()函数的常用场景:选择元素,创建元素,执行回调等。

实例

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>jQueyr对象的核心访求与属性</title>
  </head>
  <body>
    <ul>
      <li>我是列表项1</li>
      <li>我是列表项2</li>
      <li>我是列表项3</li>
      <li>我是列表项4</li>
      <li>我是列表项5</li>
    </ul>

    <!-- 导入jQuery函数库 -->
    <script src="../lib/jquery-3.3.1.js"></script>
    <script>
    //1.$(selector/html/obj/function())
    $('<ul class="list"></ul>').appendTo('body');
    $('.list').append($('<li>iPhone Xplus上市了,你的***还够用吗?</li>'));
    //创建元素时添加元素
    $('.list').append($('<li id="ten">我有10个,不怕</li>'));
    //将创建元素的属性或方法,如果较多,推荐使用对象字面量的方式进行添加
    $('.list').append($('<li>',{class:'iphone6s',text:'我的6s还能再战2年',click:function(){alert("iphone6s")}}));



    //$(function()):直接执行一个回调,这是执行jQuery代码最简单最常用的方式
    $(function(){
        $('.iphone6s').css('color','blue');
    })


    //each(function):对jquery对象中的每个元素进行回调处理
    $('li').each(function(){
    //回调中this默认指向的DOM元素
    // this.style.backgroundColor = 'lightgreen';
    //如果想使用jquery中的方法,需要将DOM元素转为jquery对象
    $(this).css('background-color','cyan');
    });


    //查看jQuery对象集合中的DOM数量
    console.log($('li').length);


    //get()和[],获取jquery对象中的dom,将jquery转为dom
    $('li').get(0).style.backgroundColor = 'lightgreen'
    $('li')[1].setAttribute('style','color: red');//并把原有的style给替换了
    console.log($('li').get().length);  //不传参数返回全部元素

    // index(selector/element)
    console.log($('li#ten').index());  // index() 方法返回指定元素相对于其他指定元素的 index 位置。返回为第二个dom的数字索引: 1

    </script>

  </body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

2.编程:jQuery常用的选择器操作,重点在层级和表单上

实例

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>jQuery中常用的选择器</title>
  </head>
  <body>

    <ul>
        <li>
            <h3 id="title">前端课程</h3>
            <ul>
                <li>HTML</li>
                <li>CSS</li>
                <li>
                    <h3>JavaScrip</h3>
                    <ul>
                        <li>jQuery</li>
                        <li>Bootstrap</li>
                    </ul>
                </li>
            </ul>
        </li>
    </ul>

    邮箱:<input type="text"> <br>
    密码:<input type="password"> <br>
    <!--input:radio-->
    <input type="radio" name="gender" value="male" checked>男
    <input type="radio" name="gender" value="female">女
    <br>
    <!--input:checkbox-->
    <input type="checkbox" name="hobby[]" value="dance"checked>跳舞
    <input type="checkbox" name="hobby[]" value="sing">唱歌
    <br>
    你的学历:
    <select name="" id="">
        <option value="">幼儿园</option>
        <option value="小学" selected>小学</option>
        <option value="">初中</option>
        <option value="">其它</option>
    </select>
    <br>
    <button type="submit">提交</button>
    <button type="reset" disabled>重置</button>


    <!-- 导入jQuery函数库 -->
    <script src="../lib/jquery-3.3.1.js"></script>
    <script>
    //通用选择器
    //$('*').addClass('highlight');//选择了页面中所有元素
    //$('li').addClass('highlight');  // 选择所有的 <li>标签
    //console.log($('li').length);
    //$('.highlight').css('color','red'); // 选择有class="highlight"的元素
    //$('#title').addClass('highlight');  // id选择器

    //层级选择器
    //$('li:first  h3').addClass('highlight');   // 选择第一个<li>下全部<h3>
    //$('li:first > h3').addClass('highlight');   // 仅选择子级元素,更深的级别忽略

    //li:contains('HTML'):first  定位到第一个内容是html列表项上
    //li:contains('HTML'):last  定位到最后一个内容是html列表项上
    //$("li:contains('HTML'):last").addClass('highlight');     //验证定位效果

    //$("li:contains('HTML'):last + li").addClass('highlight'); //相依下面兄弟
    //$("li:contains('HTML'):last ~ li").addClass('highlight');   // 相邻下面所有兄弟


    //属性选择器放在表单过滤器中一起讲
    // 选择文本框
    //$('input[type="text"]').addClass('highlight');  // 属性选择器
    $(':input').not(':submit').not(':disabled').addClass('highlight');
    //
    // console.log($(':checkbox:checked').val());  // 当前选中的值
    // console.log($(':checkbox').not(':checked').val());  //未被选中的值
    // console.log($(':checkbox').val());  //默认返回被选中的值
    //
    // console.log($(':input :selected').val());   // 注意过滤器之间必须要加空格,类:input并不针对select

    //更多表单过滤器,请同学们上机练习

    </script>

  </body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例



3. 编程:常用的DOM操作有哪些?一定要结合实例完成


实例

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>jQuery中的DOM操作</title>
  </head>
<body>
<ul>
    <li>列表项01</li>
    <li>列表项02</li>
    <li>列表项03</li>
    <li>列表项04</li>
    <li>列表项05</li>
</ul>

<script src="../lib/jquery.js"></script>
<script>
//元素内部添加
$('ul').append('<li>我是新添加的尾部元素1</li>');        // 添加到尾部
$('<li>我是新添加的尾部元素2</li>').appendTo('ul');      // 添加到尾部
$('ul').prepend('<li>我是新添加的头部元素3</li>');       // 添加到头部
$('<li>我是新添加的头部元素4</li>').prependTo('ul');     // 添加到头部

//元素前后添加
$('li:eq(2)').after('<li>我是新插入的元素5</li>');   // 元素后添加
$('<li>我是新插入的元素6</li>').insertAfter('li:eq(4)');

 //替换:将li文本包含有: "新元素"内部的元素全部替换成指定元素
 $('li:contains("我是新")').replaceWith('<li style="color:red">新元素</li>');
// $('<li style="color:lightgreen">新元素</li>').replaceAll('li:contains("新元素")');

//删除
// $('li').remove();    // 不传参数是全部删除
// $('li').remove(':odd'); // 删除奇数(从0开始)
//$('ul').empty();    // 等价于 $('li').remove();




</script>
</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例



4. 问答: jQuery与原生javascript相比,有哪些优势,哪些劣势。

优势:

代码更加精简,优雅;

jQuery对不同浏览器的事件,DOM对象,都进行了封装,各种操作都可以直接兼容各种浏览器

劣势:

代码执行速度慢;

jquery是一个特化的框架,它不是一个完整的解决方案,仍然离不开javascript。

项目中需要包含jQuery库文件。如果包含多个版本的jQuery库,可能会发生冲突。


Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post