博客列表 >12月24日_jQuery筛选、事件、动画和工具

12月24日_jQuery筛选、事件、动画和工具

fkkf467
fkkf467原创
2019年12月31日 19:03:11638浏览

一、jQuery筛选

查找

1)find()

查找出匹配元素的指定后代元素
示例
HTML代码

  1. <div id="mydiv">
  2. <p id="p1">p1</p>
  3. <p id="p2">p2</p>
  4. <span id="span1">span1</span>
  5. </div>
  6. <p id="p3">p3</p>
  7. <span id="span2">span2</span>

JavaScript代码

  1. var temp = $('#mydiv').find('p');
  2. console.log(temp);

运行结果

2)parent()

取得一个包含着所有匹配元素的唯一父元素的元素集合
示例
HTML代码

  1. <div id="div1">
  2. <p id="div1_p">div1_p</p>
  3. <div id="div2">
  4. <p id="div2_p">div2_p</p>
  5. </div>
  6. </div>

JavaScript代码

  1. var temp = $('#div1_p').parent();
  2. console.log(temp);
  3. var temp2 = $('#div2_p').parent();
  4. console.log(temp2);

运行结果

3)siblings()

取得一个包含匹配的元素集合中每一个元素的所有唯一同辈元素的元素集合
示例
HTML代码

  1. <p id="p1" class="selected">p1</p>
  2. <div id="mydiv">
  3. <p id="p2">p2</p>
  4. </div>
  5. <p id="p3">p3</p>
  6. <span class="selected">span</span>

JavaScript代码

  1. var temp = $('div').siblings();
  2. console.log(temp);
  3. var temp = $('#mydiv').siblings('.selected');
  4. console.log(temp);

运行结果

二、jQuery事件

事件处理

on()

在选择元素上绑定一个或多个事件的事件处理函数
示例
HTML代码

  1. <div id="mydiv">
  2. <p>猪小明</p>
  3. <p>张三</p>
  4. </div>

JavaScript代码

  1. $('p').on("click",function(){
  2. alert($(this).text());
  3. });

运行结果

事件

blur()

当元素失去焦点时触发 blur 事件
示例
HTML代码

  1. <label for="username">账号:</label>
  2. <input type="text" id="username" name="username" value="">

JavaScript代码

  1. $('input[name="username"]').blur(function(){
  2. var temp = $('input[name="username"]').val();
  3. if (temp == ''){
  4. $('input[name="username"]').css({border:'1px solid red'});
  5. }else{
  6. $('input[name="username"]').css({border:'1px solid rgb(238, 238, 238)'});
  7. }
  8. });

运行结果

mouseover()

当鼠标指针位于元素上方时,会发生 mouseover 事件
示例
HTML代码

  1. <p>哈哈哈</p>

JavaScript代码

  1. $('p').mouseover(function () {
  2. $('p').css("color","green");
  3. });

运行结果

change()

当元素的值发生改变时,会发生 change 事件
示例
HTML代码

  1. <select name="city">
  2. <option value="bj">北京</option>
  3. <option value="sh">上海</option>
  4. <option value="sz">深圳</option>
  5. </select>

JavaScript代码

  1. $('select[name="city"]').change(function(){
  2. alert("当前选择的城市是 "+$('option[value="'+$(this).val()+'"]').text());
  3. });

运行结果

三、jQuery效果

1)滑动

slideDown()

通过高度变化(向下增大)来动态地显示所有匹配的元素,在显示完成后可选地触发一个回调函数

slideUp()

通过高度变化(向上减小)来动态地隐藏所有匹配的元素,在隐藏完成后可选地触发一个回调函数
示例
HTML代码

  1. <h3>菜单</h3>
  2. <div id="mydiv">
  3. <p>水煮鱼</p>
  4. <p>炒土豆</p>
  5. <p>炖白菜</p>
  6. </div>
  7. <button>显示</button>

JavaScript代码

  1. $('button').click(function(){
  2. if ($('button').text() == '显示'){
  3. $('#mydiv p').slideDown(1000);
  4. $('button').text('隐藏');
  5. return;
  6. }
  7. if ($('button').text() == '隐藏'){
  8. $('#mydiv p').slideUp(1000);
  9. $('button').text('显示');
  10. return;
  11. }
  12. });

运行结果

2)自定义

animate

用于创建自定义动画的函数
示例
HTML代码

  1. <div id="mydiv"></div>

CSS代码

  1. #mydiv{
  2. width: 100px;
  3. height: 100px;
  4. background: pink;
  5. border-radius: 50%;
  6. }

JavaScript代码

  1. function sport() {
  2. var temp = 0;
  3. $('#mydiv').animate({width: '+=100', height: '+=100'}, 1000);
  4. temp++;
  5. if (temp == 1) {
  6. $('#mydiv').animate({width: '-=100', height: '-=100'}, 1000);
  7. temp == 0;
  8. }
  9. }
  10. setInterval(function () {
  11. sport();
  12. }, 2000);

运行结果

四、jQuery工具

1. 数组和对象操作

1)$.each()

通用遍历方法,可用于遍历对象和数组
示例
JavaScript代码

  1. var arr = [1,2,3,4,5];
  2. var obj = {name:'猪小明',age:'18',job:'程序员'};
  3. $.each(arr,function(i,n){
  4. console.log(n);
  5. });
  6. $.each(obj,function (i,n) {
  7. console.log(i+'--'+n);
  8. });

$.each() 不支持continue和break

continue 用 return true

break 用 return false
运行结果

2)$.inArray()

确定第一个参数在数组中的位置,从0开始计数(如果没有找到则返回 -1 )
示例
JavaScript代码

  1. var arr = ['zhangsan','lisi','wangwu','zhaoliu'];
  2. console.log($.inArray('zhangsan',arr));
  3. console.log($.inArray('wangwu',arr));
  4. console.log($.inArray('xiaoming',arr));

运行结果

2. 字符串操作

$.trim()

去掉字符串起始和结尾的空格
示例
HTML代码

  1. <form>
  2. <p>
  3. <label for="username">用户名:</label>
  4. <input type="text" id="username" name="username" value="">
  5. </p>
  6. <p>
  7. <label for="pwd">密码:</label>
  8. <input type="password" id="pwd" name="pwd" value="">
  9. </p>
  10. <p>
  11. <label for="username">确认密码:</label>
  12. <input type="password" id="repwd" name="repwd" value="">
  13. </p>
  14. <p>
  15. <button type="button" onclick="judge()">注册</button>
  16. </p>
  17. </form>

JavaScript代码

  1. function judge(){
  2. var username = $.trim($('input[name="username"]').val());
  3. var pwd = $('input[name="pwd"]').val();
  4. var repwd = $('input[name="repwd"]').val();
  5. console.log(username,pwd,repwd);
  6. if (username == ''){
  7. alert('用户名不能为空');
  8. return;
  9. }
  10. if (pwd == ''){
  11. alert('密码不能为空');
  12. return;
  13. }
  14. if (repwd == ''){
  15. alert('请再次输入密码');
  16. return;
  17. }
  18. if (repwd != pwd){
  19. alert('两次密码不一致');
  20. return;
  21. }
  22. alert('注册成功,您的用户名为'+username);
  23. }

运行结果

五、总结

对jQuery有了进一步的了解。

上一条:1227-移动端下一条:12.30作业
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议