JQuery与Ajax

JSON的选择器

语法 jQuery (选择器表达式)
语法 $(选择器表达式)

<script type="text/javascript" src="js/jquery-3.6.0.js"></script>//导入
//jquery的选择器方法
//选择器
//选中当前页面的说有a标签 添加一个class类	
	$("a").addClass("heigthlight");
//文本输入标签,其它同上
	var selsctor=document.getElementById("txtSelector").valueOf();
        $(selsctor).addClass("heigthlight");
//删除所有的class类
$("*").removeClass("heigthlight");

  1. 基本选择器
语法说明
$(“标签”)元素选择器,选择指定标签名的选择器
$(" #id")ID选择器,指定id元素的对象
$(".class ")类选择器,选中由指定的css类的元素
$(" S1,S2,S3")组合选择器,对元素进行组合
  1. 成叠选择器
语法说明
$(“ancestor descendant”)后代选择器
$(“ancestor>descendant”)子选择器
$(“prevr~siblings”)兄弟选择器
  1. 属性选择器
语法描述
$(“selector[attribute=value]”)选中属性值等于具体值的组件
$(“selector[attribute^=value]”)选中属性值以某值开头的组件
$(“selector[attribute$=value]”)选中属性值以某值结尾的组件
$(“selector[attribute*=value]”)选中属性值包含值的组件

注意细节:属性选择器只会匹配明确了书写了某个属性的 属性名和属性值
eg:注意细节

 <input style="height:24px " id="txtSelector">
 <input type="txt" style="height:24px " id="txtSelector">//匹配
  1. 位置选择器
语法描述
$(“selector:first”)获取第一个元素
$(“selector:last”)获取最或一个元素
$(“selector:even”)获取偶数位置的元素(从0开始)
$(“selector:odd”)获取奇数位置的元素(从0开始)
$(“selector:eq(n)”) 获取指定位置的元素(从0开始)
  1. 表单选择器

表单选择器是获取表单元素的简化形式,例如:获取说有文本框

语法描述
$(“selector:input”)所有输入元素
$(“selector:text”)获取文本框
$(“selector:password”)获取密码框
$(“selector:submit”)获取提交按钮
$(“selector:reset”)获取重置按钮

eg:

:text 获取所有的文本框
  1. 操作元素属性
函数描述
attr(name /properties /kry)设置或获取元素属性
removeAtte(name)移除元素属性
var href_1 = $("a[href*='163']").attr("href")
$("a[href*=163]").attr("href","htpp://www.163.com")
$("a").remove("href");
  1. 操作元素的css属性
函数描述
css()获取或设置匹配元素的样式属性
addClass()为每一个匹配的元素添加指定的类名
removeClass()从所有匹配的元素中删除全部或者指定的类
		var color1 =$("a").css("color","red");
       $("a").css({"color":"red","size":"20px"});
		$("li").addClass("myclass twoclass");//一个也可以 多个用空格隔开
		$("a").removeClass("myclass");
  1. 设置元素内容
函数描述
val()获取或设置出入项的值
text()获取或设置元素的纯文本
html()获取或设置元素内部的HTML
append()追加内容
	$("input[name='usernmae']").val("modify");
	var v=$("input[name='usernmae']").val();//后面为空的情况下是获取内容

	$("input[name='usernmae']").text("modify");
    var v=$("input[name='usernmae']").text();//获取时会去掉标签

	$("input[name='usernmae']").html("<b>modify</b>");//可以加HTML标签

	$("#container").append("<h1>.....</h1>")
  1. jQuery事件处理方法
函数描述
on(“click”,funtion)为选中的页面元素绑定单机事件
click(function)绑定事件的简写形式
鼠标事件键盘事件表单事件文档/窗口事件
click单击事件keypress按下弹起的过程submit表单提交load文档加载时
dblclick双击事件keydown某一个键按下change表单输入项发送变化的时候(当选择下拉列表某一项时)resize文档/窗口大小发生变化时
mouseenter鼠标移入某一个键弹起focus表单某一个输入项获得焦点时scroll窗口滚动时
mouseleave鼠标移出blur表单某一个输入项失去焦点时unload窗口关闭或卸载时
mouseover鼠标再组件移动过程

注:onsubmit:在表单提交之前调用 ||submit()方法把表单数据提交到Web服务器

	$("p.myclass").on("click",function () {
            //$(this)是指当前事件产生的对象
            $(this).css("background-color","yellow");
        });
	$("p.myclass").click(function () {
            $(this).css("background-color","yellow");
        });

$("input[name='username']").keypress(function (even) {//事件对象
            if (even.keyCode ==32){
                $(this).css("color","yellow");
            }
        });

Ajax

Ajax可以再不刷新的前提下,进行页面局部更新

函数描述
xmlhttp.onreadystatechange()事件用于监听Ajax的执行过程
xmlhttp.readyState说明XMLHttpRequest当前状态
xmlhttp.status服务器响应状态码
xmlhttp.responseText获取响应体文本
readyState值说明
readyState=0请求未初始化
readyState=1服务器链接已建立
readyState=2请求已被接收
readyState=3请求正在处理
readyState=4响应文本已被接收
Ajax过程 //创建 请求 响应

        //创建xmlHttpRequest对象
        var xmlhttp;
        if(window.XMLHttpRequest){ //判断浏览器的类型
            xmlhttp =new XMLHttpRequest();  //符合绝大多数的浏览器
        }else{
            xmlhttp =new ActiveXObject("Microsoft.XMLHTTP"); //使用IE浏览器复古版本
        }
        //请求
        //创建请求
        xmlhttp.open("GET","http://localhost:8080/fanyi.sogou.com/text",true);//http://locathost:8080可以去掉
        xmlhttp.send();//发送请求
        //响应
        xmlhttp.onreadystatechange=function () {
            //响应已被接收  且  服务器处理成功时
            if (xmlhttp.readyState ==4 && xmlhttp.status == 200){
                //获取响应体的文本
                var t=xmlhttp.responseText;
                document.getElementById("diccontent").innerHTML=t;
                ............
            }
        }
  1. jQuery 对Ajax的支持

jQuery对Ajax进行分装,语法: $.ajax(options);

常用设置项说明
url发送请求地址
type请求类型 (get/post)
data向服务器传递的参数
dataType服务器响应数据类型(text/ json /xml /html /jsonp / script)
success接收响应时的处理函数
errot请求失败时的处理函数

eg:

 $.ajax({
            "url":"/ajax/test",
            "type" : "get",
            "data" : "t=tiobe",   //多个可以用json拼写{"t":"yyy","q":"eeee"}
            "dataType" : "json",
            "success": function () {
                .............
            },
            "errot" :function () {
                .............
            }
        });
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在信号处理领域,DOA(Direction of Arrival)估计是一项关键技术,主要用于确定多个信号源到达接收阵列的方向。本文将详细探讨三种ESPRIT(Estimation of Signal Parameters via Rotational Invariance Techniques)算法在DOA估计中的实现,以及它们在MATLAB环境中的具体应用。 ESPRIT算法是由Paul Kailath等人于1986年提出的,其核心思想是利用阵列数据的旋转不变性来估计信号源的角度。这种算法相比传统的 MUSIC(Multiple Signal Classification)算法具有较低的计算复杂度,且无需进行特征值分解,因此在实际应用中颇具优势。 1. 普通ESPRIT算法 普通ESPRIT算法分为两个主要步骤:构造等效旋转不变系统和估计角度。通过空间平移(如延时)构建两个子阵列,使得它们之间的关系具有旋转不变性。然后,通过对子阵列数据进行最小二乘拟合,可以得到信号源的角频率估计,进一步转换为DOA估计。 2. 常规ESPRIT算法实现 在描述中提到的`common_esprit_method1.m`和`common_esprit_method2.m`是两种不同的普通ESPRIT算法实现。它们可能在实现细节上略有差异,比如选择子阵列的方式、参数估计的策略等。MATLAB代码通常会包含预处理步骤(如数据归一化)、子阵列构造、旋转不变性矩阵的建立、最小二乘估计等部分。通过运行这两个文件,可以比较它们在估计精度和计算效率上的异同。 3. TLS_ESPRIT算法 TLS(Total Least Squares)ESPRIT是对普通ESPRIT的优化,它考虑了数据噪声的影响,提高了估计的稳健性。在TLS_ESPRIT算法中,不假设数据噪声是高斯白噪声,而是采用总最小二乘准则来拟合数据。这使得算法在噪声环境下表现更优。`TLS_esprit.m`文件应该包含了TLS_ESPRIT算法的完整实现,包括TLS估计的步骤和旋转不变性矩阵的改进处理。 在实际应用中,选择合适的ESPRIT变体取决于系统条件,例如噪声水平、信号质量以及计算资源。通过MATLAB实现,研究者和工程师可以方便地比较不同算法的效果,并根据需要进行调整和优化。同时,这些代码也为教学和学习DOA估计提供了一个直观的平台,有助于深入理解ESPRIT算法的工作原理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值