2011-8-2_09-15-06_周二

本文详细介绍了jQuery库的基本使用方法,包括选择器、DOM操作、事件处理等关键特性。文章通过实例展示了如何利用jQuery简化JavaScript开发过程,适用于前端开发者快速上手。

2011-8-2_09-15-06_周二

 

http://tq365jsb003-pc:8080/cjwIbatis2Spring1.0/deluser.jspx?id=2

这种值传递,必须有方法setId()来将2赋值给参数id

 

url重写决定了url的取值与导向!

Jquery是继prototype之后又一个优秀的Javascrīpt框架。
它是轻量级的js库(压缩后只有21k) ,它兼容CSS3,还兼容各种浏览器 (IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。

jQuery已经成为目前最流行的JavaScript库

使用了$代替频繁的document.getElementById()操作。
  $("div p"); //得到所有div标签下的p元素
  $("div.container"); //得到class 为container的div元素
  $("div #msg"); //得到标签下面id为msg的div元素(不过最好别这样写,因为jQuery需要遍历所有的div元素,对于带id的元素,直接用$("#id"))。
  $("table a",context); //得到context为上下文的table里面所有的链接元素


创建一个 <input> 元素必须同时设定 type 属性。因为微软规定 <input> 元素的 type 只能写一次。
jQuery 代码:
// 在 IE 中无效:
$("<input>").attr("type", "checkbox");
// 在 IE 中有效:
$("<input type='checkbox'>");

$(this)是Jquery对象,this是DOM对象。
${"#stop"} 返回id=stop的元素的jQuery对象!

DOM对象,即是我们用传统的方法(javascript)获得的对象,jQuery对象即是用jQuery类库的选择器获得的对象;
代码如下:
var domObj = document.getElementById("id"); //DOM对象
var $obj = $("#id"); //jQuery对象;
jQuery对象就是通过jQuery包装DOM对象后产生的对象,它是jQuery独有的。jQuery对象和DOM对象,只能调用自己对象内的方法,而不能调用对方的方法!

jquery对象转换成 dom对象:
    两种方法,即[index]和get(index),是下标,其实jquery对象就是一个数组对象.
 var $cr=$("#cr"); //jquery对象
 var cr = $cr[0]; //dom对象 也可写成 var cr=$cr.get(0);
 alert(cr.checked); //检测这个checkbox是否给选中
dom对象转换成jquery对象:
    方法为$(dom对象);
 代码如下:
 var cr=document.getElementById("cr"); //dom对象
 var $cr = $(cr); //转换成jquery对象
  jquery对象提供了一套更加完善的工具用于操作dom

平时用到的jquery对象都是通过$()函数制造出来的,$()函数就是一个jquery对象的制造工厂
建议:如果获取的对象是 jquery对象,那么在变量前面加上$,这样方便容易识别出哪些是jquery对象
 如:
 var $variable = jquery对象;
 var variable = dom对象

在jQuery文件里面有定义$=jQuery;
用$("#id")和用jQuery("#id")是一样的。
    你可以理解为:
 $("txt1") == document.getElementById("txt1")
 不过它的选择器功能很强大
也可以重新定义关键字:
    比如
 var Hello = jQuery.noConflict();
 这样以后就可以用Hello做前缀了
 Hello("txt1"),跟之前的效果一样!
 $是jquery的特殊符 用于区分 jquery就是用这个来区分的

选择文档中所有图像作为元素数组,并用数组内建的 reverse 方法将数组反向。、
    HTML 代码:
 <img src="test1.jpg"/> <img src="test2.jpg"/>
    jQuery 代码:
 $("img").get().reverse();
    结果:
 [ <img src="test2.jpg"/> <img src="test1.jpg"/> ]

jQuery获得的对象都是对象数组!需要使用下标访问!返回的jq都是元素数组!
以class查询:$(".myClass"); 
以id查询:$("#abc");
匹配所有元素:$("*")
找到表单中所有的 input 元素:$("form input")
找到表单中所有的子级input元素:$("form > input")
匹配所有跟在 label 后面的 input 元素:$("label + input") 要注意“label”的作用域!
找到所有与表单同辈的 input 元素:$("form ~ input") //form与input呈并列关系!
查找所有未选中的 input 元素:
    HTML 代码:
 <input name="apple" />
 <input name="flower" checked="checked" />jQuery
    代码:
 $("input:not(:checked)");
    结果:
 [<input name="apple" />]

查找表格的1、3、5...行(即索引值0、2、4...):$("tr:even");
查找表格的2、4、6行(即索引值1、3、5...):$("tr:odd");
查找第二行:$("tr:eq(1)")
匹配所有大于给定索引值的元素:$("tr:gt(0)");
匹配所有小于给定索引值的元素:$("tr:lt(2)");

匹配如 h1, h2, h3之类的标题元素:
    给页面内所有标题加上背景色:$(":header").css("background", "#EEE");
匹配所有正在执行动画效果的元素:
    只有对不在执行动画效果的元素执行一个动画特效:
 HTML 代码:
  <button id="run">Run</button><div></div>jQuery
 代码:
  $("#run").click(function(){
  $("div:not(:animated)").animate({ left: "+=20" }, 1000);
  });
匹配所有不包含子元素或者文本的空元素:$("td:empty")
匹配含有子元素或者文本的元素:$("td:parent")
匹配包含给定属性的元素:
    HTML 代码:
 <div>
 <p>Hello!</p>
 </div>
 <div id="test2"></div>
    jQuery 代码:
 $("div[id]")
    结果:
 [ <div id="test2"></div> ]
匹配给定的属性是以某些值开始的元素:
    查找所有 name 以 'news' 开始的 input 元素:
    HTML 代码:
 <input name="newsletter" />
 <input name="milkman" />
 <input name="newsboy" />
    jQuery 代码:
 $("input[name^='news']")
    结果:
 [ <input name="newsletter" />, <input name="newsboy" /> ]
匹配给定的属性是以某些值结尾的元素:$("input[name$='letter']")
匹配给定的属性是以包含某些值的元素:$("input[name*='man']")
复合属性选择器,需要同时满足多个条件时使用:$("input[id][name$='man']")
匹配所有 input, textarea, select 和 button 元素:$(":input")

隐藏元素分两种: <tr style="display:none"><td>Value 1</td></tr>,<input type="hidden" name="id" />

从所有匹配的元素中删除全部或者指定的类:从匹配的元素中删除 'selected' 类
HTML 代码:
 <p class="selected first">Hello</p>
jQuery 代码:
 $("p").removeClass("selected");
结果:
 [ <p class="first">Hello</p> ]

如果存在(不存在)就删除(添加)一个类:
为匹配的元素切换 'selected' 类:
HTML 代码:
 <p>Hello</p><p class="selected">Hello Again</p>
jQuery 代码:
 $("p").toggleClass("selected");
结果:
[ <p class="selected">Hello</p>, <p>Hello Again</p> ]

如果开关switch参数为true则加上对应的class,否则就删除:
每点击三下加上一次 'highlight' 类
HTML 代码:
 <strong>jQuery 代码:</strong>
jQuery 代码:
  var count = 0;
  $("p").click(function(){
      $(this).toggleClass("highlight", count++ % 3 == 0);
  });
如果开关switch参数为true则加上对应的class,否则就删除:
根据父元素来设置class属性
jQuery 代码:
$('div.foo').toggleClass(function() {
  if ($(this).parent().is('.bar') {
    return 'happy';
  } else {
    return 'sad';
  }
});

html():取得第一个匹配元素的html内容。这个函数不能用于XML文档。但可以用于XHTML文档。

 

 

 

 

 

基于51单片机,实现对直流电机的调速、测速以及正反转控制。项目包含完整的仿真文件、源程序、原理图和PCB设计文件,适合学习和实践51单片机在电机控制方面的应用。 功能特点 调速控制:通过按键调整PWM占空比,实现电机的速度调节。 测速功能:采用霍尔传感器非接触式测速,实时显示电机转速。 正反转控制:通过按键切换电机的正转和反转状态。 LCD显示:使用LCD1602液晶显示屏,显示当前的转速和PWM占空比。 硬件组成 主控制器:STC89C51/52单片机(与AT89S51/52、AT89C51/52通用)。 测速传感器:霍尔传感器,用于非接触式测速。 显示模块:LCD1602液晶显示屏,显示转速和占空比。 电机驱动:采用双H桥电路,控制电机的正反转和调速。 软件设计 编程语言:C语言。 开发环境:Keil uVision。 仿真工具:Proteus。 使用说明 液晶屏显示: 第一行显示电机转速(单位:转/分)。 第二行显示PWM占空比(0~100%)。 按键功能: 1键:加速键,短按占空比加1,长按连续加。 2键:减速键,短按占空比减1,长按连续减。 3键:反转切换键,按下后电机反转。 4键:正转切换键,按下后电机正转。 5键:开始暂停键,按一下开始,再按一下暂停。 注意事项 磁铁和霍尔元件的距离应保持在2mm左右,过近可能会在电机转动时碰到霍尔元件,过远则可能导致霍尔元件无法检测到磁铁。 资源文件 仿真文件:Proteus仿真文件,用于模拟电机控制系统的运行。 源程序:Keil uVision项目文件,包含完整的C语言源代码。 原理图:电路设计原理图,详细展示了各模块的连接方式。 PCB设计:PCB布局文件,可用于实际电路板的制作。
【四旋翼无人机】具备螺旋桨倾斜机构的全驱动四旋翼无人机:建模与控制研究(Matlab代码、Simulink仿真实现)内容概要:本文围绕具备螺旋桨倾斜机构的全驱动四旋翼无人机展开研究,重点进行了系统建模与控制策略的设计与仿真验证。通过引入螺旋桨倾斜机构,该无人机能够实现全向力矢量控制,从而具备更强的姿态调节能力和六自由度全驱动特性,克服传统四旋翼欠驱动限制。研究内容涵盖动力学建模、控制系统设计(如PID、MPC等)、Matlab/Simulink环境下的仿真验证,并可能涉及轨迹跟踪、抗干扰能力及稳定性分析,旨在提升无人机在复杂环境下的机动性与控制精度。; 适合人群:具备一定控制理论基础和Matlab/Simulink仿真能力的研究生、科研人员及从事无人机系统开发的工程师,尤其适合研究先进无人机控制算法的技术人员。; 使用场景及目标:①深入理解全驱动四旋翼无人机的动力学建模方法;②掌握基于Matlab/Simulink的无人机控制系统设计与仿真流程;③复现硕士论文级别的研究成果,为科研项目或学术论文提供技术支持与参考。; 阅读建议:建议结合提供的Matlab代码与Simulink模型进行实践操作,重点关注建模推导过程与控制器参数调优,同时可扩展研究不同控制算法的性能对比,以深化对全驱动系统控制机制的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值