美文网首页
Day01(jQuery,事件,选择器,demo置顶)

Day01(jQuery,事件,选择器,demo置顶)

作者: AnnQi | 来源:发表于2017-10-09 20:50 被阅读0次

    首先,入口函数
    window.onload
    他有个事件覆盖的问题,比如说你的页面内有两个window.onload,那么后面一个就会覆盖前面一个;
    代码的容错性差
    兼容性问题多;
    代码繁琐,代码量多
    代码非常乱,动画效果实现困难;
    这些东西,都可以通过我们的jQuery来解决掉;

    jQuery

    Jquery:他是javascript的一个集成库;
    库:将一些常用操作进行封装成函数,供我们调用,并且不会影响我们的原生javascript,JQ的本质还是JS,终究还是在我们的JS上面进行操作的;

    JQ的主旨:写的更少,做得更多;

    jquery版本:3.2.1最新版,向下兼容;
    它分为正常版本和压缩版本,正常版本开发使用,发布项目的时候,请使用压缩版本,减少用户的流量以及项目的体积;

    使用jquery,就必须先导入,并且, 必须放在你自己的js前面;
    Js入口函数:
    window.onload=function(){}
    
    Jq入口函数
    jQuery(function(){});
    
    

    JQuery引入进来之后,我们就要使用;
    所以,我们就会有事件处理程序

    1. 事件处理程序

    1.1事件源
      JS方式:document.getElementById(‘box’);
      Jq方式:jQuery(‘#box’);
    

    这里开始,我们要注意,每次写jQuery特别麻烦
    那么,我们有我们简略的写法:

    jQuery === $

    获取事件源,那么,我们JS里面,有通过ID获取,有通过类,也有通过name,标签获取,那么,在JQ里面,也有很多事件源的获取方法,我们叫做选择器;
    和CSS选择器很像;

    JQ改变对象CSS样式的方法:$(“#demo”).css(“background”,”red”)

    Jq事件 和javascript其实没多大区别
    一般就是少了一个on而已;
    mouseenter事件也是鼠标移入事件
    mouseover/mouseout鼠标移动到某个元素上,会被触发多次
    mouseenter进入只会触发一次

    $(.demo).text(...)==div.innerHTML=...

    jQuery 选择器

    选择器
    1.id选择器:$('#lis2').css('font-size','88px');
    
    2.class选择器:$('.lis');   //json形式
    
    3.标签选择器:$('li');
    
    4.组合选择器:$('#lis2,.lis');
    
    5.通配符选择器:$('*');
    
    改变多个属性
        lis.css({
            'color':'cyan',
            'font-size':'80px'
        });
    
    层级选择器
    1.后代选择器 用空格隔开:var lis = $('#lis-9 ul');
    
    2.子代选择器:$('#lis-9>li');
    
    3.下一个兄弟节点 +隔开 ,选中下一个节点:$('#lis2+li');
    
    4.后面的所有兄弟节点: $('#lis2~li');
    
    基本选择器
    1.first 选择指定标签集合中的第一个标签:$('li:first');
    
    2.last 选择指定标签集合的最后一个标签:$('li:last');
    
    3.not()除了not()里面的元素,其他都选择:$('li:not(#lis2)');
    
    4. even 选择索引为偶数的元素:var lis =  $('li:even');
    
    5.odd 选择索引为奇数的元素:var lis = $('li:odd');
    
    6.eq 选择指定索引的元素:var lis = $('li:eq(3)');
    
    7.gt 选择索引大于指定值得元素
                //当前索引不会被选择
                var lis = $('li:gt(5)');
    
    8.lt 选择索引小于指定值的元素
                //当前索引不会被选择
                var lis = $('li:lt(5)');
    
    内容选择器
    1.contains 根据内容选择元素,如果内容包含的有指定的文本,就能被选择
                var lis = $('li:contains(3)');
    
    2 .empty 选择空标签,有空格、回车符号的都不是空标签
                var lis = $('li:empty');
    
    3.has 选择包含有指定标签的元素
                var lis=$('li:has(ul)')
    
    4.parent 选择所有非空的元素
                //哪怕只有空格,回车,隐藏的,照样会被选择
                var lis = $('li:parent');
    
    5.hidden 选择所有被隐藏的标签
                var lis = $('ul:hidden');
    
    6.选择所有显示状态的标签,包括空标签
                var lis = $('li:visible');
    
    属性选择器
    1.选择所有具有指定属性的元素:
    var lis = $('li[class]');      只要li带有class属性,就会被选择,不论class是否相同
    
    2、根据属性名和属性的值来选择:
    var lis = $('li[class=lis-2]');     先选中所有li,然后选择带有class的li,最后选择class为lis-2的元素
    
    3.选择所有属性部位某个值的所有元素,没有这个属性也会被选择:
    var lis = $('li[class!=lis-2]');         //只要没有class,或者class不等于lis-2,就会被选择
    
    4.选择属性值以某个字符或者字符串开头的元素
                //只要你的属性值以l开头,不管你后面是啥,都会被选择
                var lis = $('li[class ^= l]');
    
    5.选择属性值包含指定字符的所有元素
                //只要你的属性值包含 - ,就会被选择,不论-在什么地方
                var lis = $('li[class*=-]')
    
    6.选择属性值以指定字符串结尾的元素
                //只要你的属性值最后一个字符是3,那就选中你,不管你前面有什么东西;
                var lis = $('li[class$=3]');
    
    7.选择属性吗具有制定值的元素
                var lis = $('li[class ~= lis-2]');
                //和第二条的区别,第二条要求必须完全相等,多一个少一个都不行,而这个只要包含在其中就行了;
    
    8.选择属性值以制定字符串为前缀的元素
                //属性值以data-开头的属性;
                var lis = $('li[ind |= data]');
    
    9.多属性联合选择
                var lis = $('li[class][id]')
                //同时具有class属性和id属性的元素就会被选择
    
    表单选择器
    1.选择所有input
                    var ipt = $(':input');
    
    2.选择文本输入框
                    var ipt = $(':text');
    
    3.选择复选框
                    var ipt = $(':checked');
    
    4.单选框
                    var ipt = $(':radio');
    
    5.密码框
                    var ipt = $(':password');
    
    6.提交按钮
                    var ipt = $(':submit');
    
    7.普通按钮
                    var ipt = $(':button')
    
    8.重置按钮
                    var ipt = $(':reset');
    
    9.文件夹按钮
                    var ipt = $(':file');
    
    10. 图片
                    var ipt = (':image');
    
    表单属性选择器
    1.选择可操作性的表单元素
                    var ipt = $(':enabled');
    
    2.选择所有不可操作的表单元素
                    var ipt = $(':disabled');
    
    3.选择下拉框中被选择的option
                    var ipt = $(':selected');
    

    demo jQ置顶

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <style type="text/css">
                *{
                    margin: 0;
                    padding: 0;
                }
                .box{
                    width: 150px;
                    height: 440px;
                    position: absolute;
                    top: 100px;
                    left: 0;
                    background: aqua;
                }
                .mian{
                    height: 4000px;
                    width: 10px;
                }
            </style>
            <script type="text/javascript" src="jquery-3.2.1.min.js" ></script>
            <script type="text/javascript">
                $(function(){
                    $(document).scroll(function(){
                        var s = $(document).scrollTop();
                        console.log(s)
                        if(s>100){
                            $('.box').css('top',s+'px')
                        }
                    });
                });
            </script>
        </head>
        <body>
            <div class="box">
                
            </div>
            <div class="mian">
                
            </div>
        </body>
    </html>
    

    相关文章

      网友评论

          本文标题:Day01(jQuery,事件,选择器,demo置顶)

          本文链接:https://www.haomeiwen.com/subject/biapyxtx.html