jQuery版本升级问题汇总

本文介绍了将jQuery从1.8.2升级到3.3.1过程中遇到的问题,包括attr与prop的区别、.load()函数的替换、$.browser的处理、val方法的改变以及.error()方法的替换,并提供了相应的解决方案。
摘要由CSDN通过智能技术生成

背景:客户需要,认为3.0之前的版本存在XSS(跨站脚本攻击)风险,jquery版本需要从当前的1.8.2更新到3.3.1。

 

查询了官方文档,https://www.jquery123.com/category/deprecated/deprecated-3.0/

3.0以后的版本主要弃用的API有:.bind()、.unbind()、.delegate()、.undelegate()、jquery.fx.interval

1.9和1.10版本弃用的API有jquery.support()、.context()

 

详细问题:

1、attr和prop

attr:获取匹配的元素集合中的第一个元素的属性的值  或 设置每一个匹配元素的一个或多个属性。
prop:获取匹配的元素集中第一个元素的属性(property)值或设置每一个匹配元素的一个或多个属性。

attr是1.0之后使用的,prop是1.6以后使用的,用法不同,需注意。

在jQuery 1.6中,当属性没有被设置时候,.attr()方法将返回undefined。 若要检索和更改DOM属性,比如元素的checked, selected, 或 disabled状态,使用.prop()方法。

版本升级最大改动就在这里,之前的代码大量使用attr,没办法。。。

 

2、报错:Uncaught TypeError: url.indexOf is not a function
这个错误是由于调用了load函数导致的错误
把代码里调用load函数的方式
//old

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值