Ajax

====常用方法
$()传入一个函数,会执行它(功能代码块)//$(function(){xxxxxx})
$(document).ready(function(){//文档加载完毕的回调函数})
$.noConflict()//var jq=$.noConflict()//避免冲突,更改调用名字
$.parseJSON()//$.parseJSON(‘{“name”:”karen”}’)//把严格模式的json字符串转为对象
$.makeArray()//将类数组(数组的有些方法不能使用比如push)对象转化为真正的数组(这时候才能使用数组的一些方法)//常见的类数组:jq对象,NodeList对象,arguments对象//注意点:类数组中的length值决定了转换后数组的长度:$.makeArray({0:”karen”,1:”46”,length:1})那只会显示第0个。

====getter,setter方法 (还不怎么熟悉的)
1.jq设计中同一个方法,既可以当getter又可以当setter,如果传入新值(key-value)就是走的setter,如果只是传入key值,没有指定新值,则走getter方法返回当前值
2.调用setter时不仅会设置value值,调用结束后还会返回当前jq对象(链式调用)
3.调用setter时,有的方法可以接受对象参数和函数参数:对象(每一个属性都指定一个键值对),函数(调用该函数来设置值,函数内部的this指向当前元素,第一个参数为当前元素的索引,第二个参数为当前元素对应的查找值,返回值为设置的新value值)
4.调用getter时,只会查询元素集中的第一个元素,getter不会返回调用自己的jq对象:因此注意链式调用时,中间不能有getter,只能放在末尾

====ajax
一,ajax综合方法
$.ajax(options)
$.ajax() 只有一个参数:配置对象,返回值为原生的XMLHttpRequest对象
例:

$.ajax({
url:'http://xxxx',
data:'count=25&maxid=2937193',
type:'GET',
success:function(data){},
error:function(){}
})

选项:(所有选项都是可选的)
—-type:String//请求方式,默认get

—-url:String//请求的地址

—-async:Boolean//(默认: true) 默认设置下,所有请求均为异步请求。如果发送同步请求,设置为 false。注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。

—-dataType:String//预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息返回 responseXML 或 responseText,并作为回调函数参数传递,可用值:
“xml”: 返回 XML 文档
“html”: 返回纯文本 HTML 信息;包含 script 元素。
“script”: 返回纯文本 JavaScript 代码。不会自动缓存结果。除非设置了”cache”参数
“json”: 返回 JSON 数据 。
如果你指定了 dataType 选项,请确保服务器返回正确的 MIME 信息,(如 html 返回 “text/html”)。错误的 MIME 类型可能导致不可预知的错误
如果dataType设置为”script”,那么所有的远程(不在同一域名下)的POST请求都将转化为GET请求。(因为将使用DOM的script标签来加载)

—-cache:Boolean//(默认: true,dataType为script时默认为false),设置为 false 将不会从浏览器缓存中加载请求信息。

—-contentType:String//(默认: “application/x-www-form-urlencoded”) 发送信息至服务器时内容编码类型。默认值适合大多数应用场合。

—-data:String//发送的参数:”count=25&maxid=29448”。可以填对象,但是属性值如果为数组,jQuery 将自动为不同值对应同一个名称。如:{karen:[“46”, “singer”]} 转换为 ‘&karen=46&karen=singer’

—-error:function//请求失败时的回调
function (XMLHttpRequest, textStatus, errorThrown) {
//参数:XMLHttpRequest 对象、错误状态、捕获的错误对象
// 通常 textStatus 和 errorThrown 之中只有一个会包含信息
//this指向$.ajax(options)的options参数对象
}

—-timeout:times//超时时间,单位毫秒.如果设置该选项,当请求没有在指定时内完成,请求会取消并触发error回调,回调状态码为’timeout’,默认为0:请求完成之前永不取消
//function(data)
—-success:function//请求成功的回调,三个参数:第一个响应的数据(服务器响应的是什么类型的数据,这里就是对应的类型:比如响应json那这里就是json格式的数据,响应script这里就是加载的js文本). 第二个jq状态码,一般都是”success”. 第三个发送请求的XMLHttpRequest对象,如果是js的请求(dataType:’script’),第三个参数是没有值得

二,抽象出来的单一方法
—-load() 方法通过 AJAX 请求从服务器加载数据,并把返回的数据放置到指定的元素中
$(element).load(url,data,function(response,status,xhr))
url://地址
data://可选,发送的参数。
function(response,status,xhr)
可选,请求完成时的回调
response://结果数据
status://请求的状态(”success”, “error”, “timeout” 或 “parsererror”)
xhr://XMLHttpRequest对象
例:

$("#btn1").click(function(){
  $("div1").load('test.txt')
})

—–$.get(url,data,callback(response,status,xhr))//如果需要请求出错时的回调函数,请使用 $.ajax方法
url: 必需。
data:(可选)发送到服务器的参数
success:function(response,status,xhr)
可选。请求成功的回调函数
response: 结果数据
status: 请求的状态
xhr: XMLHttpRequest 对象
例:

$.get('http://xxx',function(data){console.log(data)})

—-$.getJSON(url,callback(data,status,xhr))//如果需要请求出错时的回调函数,请使用 $.ajax方法 $.getJSON没有post方法,能满足跨域要求,请求的数据为JSON数据
url 必需。地址//注意jsonp的请求:http://xxxxx?name=kraren&callback=?问号就填为问号,随机帮我们取名字,然后数据帮我们封装到回调函数的data里
callback(data,status,xhr)
可选。成功的回调函数
data结果数据
status请求的状态

—-$.post(url,data,callback(data, textStatus, jqXHR),dataType)
//如果需要请求出错时的回调函数,请使用 $.ajax方法
url 必需,请求地址
data//(可选)待发送 Key/value 参数
success(data, textStatus, jqXMLHttpRequest)//(可选)请求成功时执行的回调函数。(回调函数的参数就不讲了)
dataType//(可选)规定预期的服务器响应的数据类型。默认执行智能判断(xml、json、script 或 html)

拓展:用ajax进行预加载

window.onload = function() {  
    setTimeout(function() {  
        // XHR to request a JS and a CSS  
        var xhr = new XMLHttpRequest();  
        xhr.open('GET', 'http://domain.tld/preload.js');  
        xhr.send('');  
        xhr = new XMLHttpRequest();  
        xhr.open('GET', 'http://domain.tld/preload.css');  
        xhr.send('');  
        // preload image  
        new Image().src = "http://domain.tld/preload.png";  
    }, 1000);  
};

代码预加载了“preload.js”、“preload.css”和“preload.png”。1000毫秒的超时是为了防止脚本挂起,而导致正常页面出现功能问题。
使用Ajax,加载文件不会应用到加载页面上。这是目前最优的预加载方案!

在IT领域,尤其是地理信息系统(GIS)中,坐标转换是一项关键技术。本文将深入探讨百度坐标系、火星坐标系和WGS84坐标系之间的相互转换,并介绍如何使用相关工具进行批量转换。 首先,我们需要了解这三种坐标系的基本概念。WGS84坐标系,即“World Geodetic System 1984”,是一种全球通用的地球坐标系统,广泛应用于GPS定位和地图服务。它以地球椭球模型为基础,以地球质心为原点,是国际航空和航海的主要参考坐标系。百度坐标系(BD-09)是百度地图使用的坐标系。为了保护隐私和安全,百度对WGS84坐标进行了偏移处理,导致其与WGS84坐标存在差异。火星坐标系(GCJ-02)是中国国家测绘局采用的坐标系,同样对WGS84坐标进行了加密处理,以防止未经授权的精确位置获取。 坐标转换的目的是确保不同坐标系下的地理位置数据能够准确对应。在GIS应用中,通常通过特定的算法实现转换,如双线性内插法或四参数转换法。一些“坐标转换小工具”可以批量转换百度坐标、火星坐标与WGS84坐标。这些工具可能包含样本文件(如org_xy_格式参考.csv),用于提供原始坐标数据,其中包含需要转换的经纬度信息。此外,工具通常会附带使用指南(如重要说明用前必读.txt和readme.txt),说明输入数据格式、转换步骤及可能的精度问题等。x86和x64目录则可能包含适用于32位和64位操作系统的软件或库文件。 在使用这些工具时,用户需要注意以下几点:确保输入的坐标数据准确无误,包括经纬度顺序和浮点数精度;按照工具要求正确组织数据,遵循读写规则;注意转换精度,不同的转换方法可能会产生微小误差;在批量转换时,检查每个坐标是否成功转换,避免个别错误数据影响整体结果。 坐标转换是GIS领域的基础操作,对于地图服务、导航系统和地理数据分析等至关重要。理解不同坐标系的特点和转换方法,有助于我们更好地处
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值