博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python 第五十三章 jquery事件
阅读量:5201 次
发布时间:2019-06-13

本文共 4659 字,大约阅读时间需要 15 分钟。

标签操作

值操作

取值:    文本输入框:$('#username').val();    input,type=radio单选框: $('[type="radio"]:checked').val();,首先找到被选中的标签,再进行取值    input,type=checkbox多选框: 通过val方法不能直接获取多选的值,只能拿到一个,想拿到多个项的值,需要循环取值        var d = $('[type="checkbox"]:checked');        for (var i=0;i

作业1思路

绑定点击事件1 获取input标签中的值val2 val().trim().length 3 =0      方式1:提前在input标签后面放一个span标签,加一个类值{color:red},找到span并添加文本内容, .text() .html()4 如果不等于0,清空span中的内容

属性操作

设置属性: -- $('#d1').attr({'age1':'18','age2':'19'});        单个设置:$('#d1').attr('age1','18');查看属性值: -- $('#d1').attr('age1');删除属性: -- $('#d1').removeAttr('age1'); 括号里面写属性名称
prop和attr方法的区别:总结一下:    1.对于标签上有的能看到的属性和自定义属性都用attr    2.对于返回布尔值的比如checkbox、radio和option的是否被选中或者设置其被选中与取消选中都用prop。    具有 true 和 false 两个属性的属性,如 checked, selected 或者 disabled 使用prop(),其他的使用 attr()    checked示例:        attr():            查看值,checked 选中--'checked'  没选中--undefined                $('#nv').attr({'checked':'checked'});             设置值,attr无法完成取消选中                $('#nv').attr({'checked':'undefined'});                $('#nv').attr({'checked':undefined});                         prop():            查看值,checked 选中--true  没选中--false                $(':checkbox').prop('checked');            设置值:                $(':checkbox').prop('checked',true);                $(':checkbox').prop('checked',false);

文档处理

姿势1:添加到指定元素内部的后面    $(A).append(B)// 把B追加到A    $(A).appendTo(B)// 把A追加到B        append示例:        方式1:             创建标签                var a = document.createElement('a');                $(a).text('百度');                $(a).attr('href','http://www.baidu.com');                $('#d1').append(a);        方式2:(重点)            $('#d1').append('京东');    appendto示例        $(a).appendTo('#d1');        姿势2:添加到指定元素内部的前面    $(A).prepend(B)// 把B前置到A    $(A).prependTo(B)// 把A前置到B姿势3:添加到指定元素外部的后面    $(A).after(B)// 把B放到A的后面    $(A).insertAfter(B)// 把A放到B的后面姿势4:    $(A).before(B)// 把B放到A的前面    $(A).insertBefore(B)// 把A放到B的前面移除和清空元素    remove()// 从DOM中删除所有匹配的元素。    empty()// 删除匹配的元素集合中所有的子节点,包括文本被全部删除,但是匹配的元素还在    示例:        $('#d1').remove();        $('#d1').empty();        替换:    replaceWith()    replaceAll()     示例:        $('#d1').replaceWith(a);  用a替换前面的标签        $(a).replaceAll('#d1');

克隆(复制标签)

示例:    
Title

作业3

1 模态对话框结合点击事件完成弹出和隐藏2 点击取消,关闭对话框3 点击确认,关闭对话框,获取用户输入的内容4 拼接一个tr标签,将数据放到里面的td标签里面,然后将tr标签放到tbody标签内部的后面5 开除,点击这一行的那个开除按钮,就将本行tr标签删除 remove方法

事件

绑定事件的两种方式:    // 绑定事件的方式1    // $("#d1").click(function () {    //     $(this).css('background-color','green');    // })    // 方式2    $('#d1').on('click',function () {        $(this).css('background-color','green');    })

常用事件

click(function(){...})hover(function(){...})blur(function(){...})focus(function(){...})change(function(){...}) //内容发生变化,input,select等keyup(function(){...})  mouseover 和 mouseenter的区别是:mouseover事件是如果该标签有子标签,那么移动到该标签或者移动到子标签时会连续触发,mmouseenter事件不管有没有子标签都只触发一次,表示鼠标进入这个对象
示例:                    
Title
用户名:

移除事件(不常用)

.off( events [, selector ][,function(){}])off() 方法移除用 .on()绑定的事件处理程序。$("li").off("click");就可以了

事件冒泡

// 事件冒泡,子标签和父标签(祖先标签)绑定了相同的事件,比如点击事件,那么当你点击子标签时,会一层一层的往上触发父级或者祖父级等等的事件    $('.c1').click(function () {        alert('父级标签!!!');    });    $('.c2').click(function (e) {        alert('子标签~~~');        // 阻止事件冒泡(阻止事件发生)        return false; //方式1        // e.stopPropagation() // 方式2    })

事件委托

.
// 事件委托 $('#d1').on('click','.btn',function () { // $(this)是你点击的儿子标签 var a= $(this).clone(); $('#d1').append(a); });//中间的参数是个选择器,前面这个$('table')是父级标签选择器,选择的是父级标签,意思就是将子标签(子子孙孙)的点击事件委托给了父级标签//但是这里注意一点,你console.log(this);你会发现this还是触发事件的那个子标签,这个记住昂

页面载入

window.onload:    原生js的window.onload事件:// onload 等待页面所有内容加载完成之后自动触发的事件    window.onload = function(){            $('.c1').click(function () {                $(this).addClass('c2');            });        };jquery页面载入:    $(function () {            $('.c1').click(function () {                $(this).addClass('c2');            });        })非简写方式    $(document).ready(function(){        // 在这里写你的JS代码...     })与window.onload的区别    1.window.onload()函数有覆盖现象,必须等待着图片资源加载完成之后才能调用    2.jQuery的这个入口函数没有函数覆盖现象,文档加载完成之后就可以调用(建议使用此函数)

jquery的each

循环数组:    var a = [11,22,33];    $.each(a,function(k,v){       console.log(k,v);    })循环标签对象:    $('li').each(function(k,v){        console.log(k,$(v).text());    })return false;终止循环在遍历过程中可以使用 return false提前结束each循环。 类似于break而直接使用return;后面什么都不加,不写false,就是跳过本次循环的意思 类似与continue

转载于:https://www.cnblogs.com/zhangshan33/p/11557823.html

你可能感兴趣的文章
如何更改Android的默认虚拟机地址(Android virtual driver路径设置)
查看>>
Python内置函数(36)——iter
查看>>
事件双向绑定原理
查看>>
HTML标签_1
查看>>
[Angular] @ViewChildren and QueryLists (ngAfterViewInit)
查看>>
jsp组成元素
查看>>
排序算法(转)
查看>>
windows自带的可生成各种数据库连接字符串工具打开方法
查看>>
Linux查看系统开机时间(转)
查看>>
form表单中method的get和post区别
查看>>
【做题】arc068_f-Solitaire——糊结论
查看>>
Poj 1094 拓扑排序 水题
查看>>
Oracle SQL查询,日期过滤条件要注意的一点
查看>>
链表快排
查看>>
链表操作合集
查看>>
leetcode852 C++ 20ms 找最高峰 序列先增后减
查看>>
JavaScript深入系列(一)--原型和原型链详解
查看>>
一点感想
查看>>
产生随机数
查看>>
vm center(VC)5.1登陆密码忘记了怎么办?
查看>>