首页 > 其他 > 详细

前端 50

时间:2020-02-21 18:30:31      阅读:69      评论:0      收藏:0      [点我收藏+]
昨日内容回顾
样式操作

样式类

addClass()
removeClass()
hasClass()
toggleClass()

css操作

.css({color:red,})
位置操作

查看位置
    offset()
    position()
设置位置
    offset({top:100,left:200})
尺寸

content
    .height()
    .width()
content + padding
    .innerHeight()
    .innerWidth()
content +padding + border
    .outerHeight()
    .outerWidth()
    
文本操作

查看文本
    .html()  文本+标签
    .text()  文本
设置
    .html(xxx)  识别标签
    .text(xxx)
值操作

获取值
    input type=text   --- $([type="text"]).val()
    input type=radio  --- $([typy="radio"]:checked).val()
    input type=checkbox  --- var a = $([typy="checkbox"]:checked)    
                                for (var i=0;i<a.length;i++){
                                    a.eq(i).val();
                                }    
    select 单选   ---  $(select).val();
    select 多选   ---  $(select).val();
    
设置值
    input type=text   --- $([type="text"]).val(xxx)
    input type=radio  --- $([typy="radio"]).val([1])
    input type=checkbox  --- $([typy="checkbox"]).val([1,2])
    
    select 单选   ---  $(select).val(1);
    select 多选   ---  $(select).val([1,2]);
    
属性操作

attr()  
    查看属性  .attr(属性名) 
    设置属性  .attr({属性名:属性值,})
    
prop()
    checked  selected disabled..
    查看属性
        .prop(checked) -- true\false
    设置属性
        .prop(checked,true)
文档操作

插入到某个标签的里面的后面
$(A).append(B)         $(A).append(<a href="">xx</a>) 
$(B).appendTo(A) 

插入到某个标签里面的前面
$(A).prepend(B)
$(B).prependTo(A)

插入到某个标签外面的后面
$(A).after(B)
$(B).insertAfter(A)

插入到某个标签外面的前面
$(A).before(B)
$(B).insertBefore(A)

清空和移除
remove()  
empty()

替换
$(A).replaceWith(B)
$(B).replaceAll(A)

克隆
.clone()
.clone(true)  连带事件一起克隆
今日内容
事件

事件绑定方式

<script src="jquery.js"></script>
<script>
    //方式1
    // $(‘#d1‘).click(function () {
    //     $(this).css({‘background-color‘:‘green‘});
    // });
    //方式2
    $(#d1).on(click,function () {
        $(this).css({background-color:green});
    })

</script>
常用事件

click  左键点击事件
    //获取光标触发的事件
    $([type="text"]).focus(function () {
        $(.c1).css({background-color:black});
    });
    //失去光标(焦点)触发的事件
    $([type="text"]).blur(function () {
        $(.c1).css({background-color:purple});
    });

    //域内容发生改变时触发的事件
    $(select).change(function () {
        $(.c1).toggleClass(cc);
    });

    //鼠标悬浮触发的事件
    // $(‘.c1‘).hover(
    //     //第一步:鼠标放上去
    //     function () {
    //         $(this).css({‘background-color‘:‘blue‘});
    //     },
    //     //第二步,鼠标移走
    //     function () {
    //         $(this).css({‘background-color‘:‘yellow‘});
    //     }
    // )

    // 鼠标悬浮  等同于hover事件
    // 鼠标进入
    // $(‘.c1‘).mouseenter(function () {
    //     $(this).css({‘background-color‘:‘blue‘});
    // });
    // 鼠标移出
    //  $(‘.c1‘).mouseout(function () {
    //     $(this).css({‘background-color‘:‘yellow‘});
    // });
    
    // $(‘.c2‘).mouseenter(function () {
    //     console.log(‘得港绿了‘);
    // });
    // 鼠标悬浮事件
    // $(‘.c2‘).mouseover(function () {
    //     console.log(‘得港绿了‘);
    // });
    // mouseover 和 mouseenter的区别是:mouseover事件是如果该标签有子标签,那么移动到该标签或者移动到子标签时会连续触发,mmouseenter事件不管有没有子标签都只触发一次,表示鼠标进入这个对象


//键盘按下触发的事件  e\event事件对象
    $(window).keydown(function (e) {
        // console.log(e.keyCode); //每个键都有一个keyCode值,通过不同的值来触发不同的事件
        if (e.keyCode === 37){
            $(.c1).css({background-color:red});
        }else if(e.keyCode === 39){
            $(.c1).css({background-color:green});
        }
        else {
            $(.c1).css({background-color:black});
        }
    })
    // 键盘抬起触发的事件
    $(window).keyup(function (e) {
        console.log(e.keyCode);
    })

    
    input事件:
        22期百度:<input type="text" id="search">
        <script src="jquery.js"></script>
        <script>
            $(#search).on(input,function () {
                console.log($(this).val());
            })

        </script>

事件冒泡

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        #d1{
            background-color: red;
            height: 200px;
        }
        #d2{
            background-color: green;
            height: 100px;
            width: 100px;
        }

    </style>

</head>
<body>

<div id="d1">
    <div id="d2"></div>

</div>


<script src="jquery.js"></script>
<script>
    $(#d1).click(function () {
        alert(父级标签);
    });
    $(#d2).click(function () {
        alert(子级标签);
    });
    

</script>

</body>
</html>
阻止后续事件发生

    $(#d1).click(function () {
        alert(父级标签);
    });
    $(#d2).click(function (e) {
        alert(子级标签);
        return false;
        // e.stopPropagation();
    });

事件委托

事件委托是通过事件冒泡的原理,利用父标签去捕获子标签的事件,将未来添加进来的某些子标签自动绑定上事件。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<div id="d1">
    <button class="c1">爱的魔力转圈圈</button>

</div>

<script src="jquery.js"></script>
<script>
    // $(‘.c1‘).on(‘click‘,function () {
    //     alert(‘得港被雪飞调教了,大壮很难受!‘);
    //     var btn = document.createElement(‘button‘);
    //     $(btn).text(‘爱的魔力转圈圈‘);
    //     $(btn).addClass(‘c1‘);
    //     console.log(btn);
    //     //添加到div标签里面的后面
    //     $(‘#d1‘).append(btn);
    //
    // });

    #将button 选择器选中的标签的点击事件委托给了$(#d1);
    $(#d1).on(click,button,function () {
        alert(得港被雪飞调教了,大壮很难受!);
        var btn = document.createElement(button);
        $(btn).text(爱的魔力转圈圈);
        $(btn).addClass(c1);
        console.log(btn);
        console.log($(this)) //还是我们点击的那个button按钮
        //添加到div标签里面的后面
        $(#d1).append(btn);

    });


</script>
</body>
</html>
页面载入和window.onload

1. jquery文件要在使用jquery的代码之前引入

2. js代码最好都放到body标签下面或者里面的最下面来写

3.window.onload
    // window.onload = function () {
    //     $(‘.c1‘).click(function () {
    //         $(this).css({‘background-color‘:‘green‘});
    //     })
    // }
4.页面载入,$(function (){alert(xx);}) -- $(document).ready(function(){});
    页面载入与window.onload的区别
    1.window.onload()函数有覆盖现象,必须等待着图片资源加载完成之后才能调用
    2.jQuery的这个入口函数没有函数覆盖现象,文档加载完成之后就可以调用(建议使用此函数)
    
示例:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="jquery.js"></script>
    <script>
        // 等待整个页面中的内容全部加载完成之后,触发window.onload对应的函数里面的内容
        // window.onload 有覆盖现象,会被后面的window.onload给重新赋值
        // window.onload = function () {
        //     $(‘.c1‘).click(function () {
        //         $(this).css({‘background-color‘:‘green‘});
        //     })
        // }

        
        $(function () {
            $(.c1).click(function () {
                $(this).css({background-color:green});
            })
        });

    </script>
    <script src="xx.js"></script>


    <style>
        .c1{
            background-color: red;
            height: 200px;
            width: 200px;
        }
    </style>
</head>
<body>

<div class="c1"></div>

<img src="" alt="">


</body>

</html>
    

  

 

前端 50

原文:https://www.cnblogs.com/shaohuagu/p/12342307.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!