FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 4179|回复: 2
打印 上一主题 下一主题

【已解决】jQuery v3.x导致jQuery UI自动完成组件异常

[复制链接]
跳转到指定楼层
楼主
发表于 2018-8-15 12:23:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式



因为默认jQuery升级到了v3.x,而jQuery UI还是 v1.11.4,这是jQueryUI的一个BUG:链接:jquery 3.0.0 breaks jqueryui dialog with error jf....

按道理这是jQueryUI的一个BUG,升级到jQueryUI v1.12.1就好了,不过最新版的jQueryUI支持IE11(而IE9,10不在测试之列):链接:Browser Support | jQuery UI

这就有点纠结了....

有了,上面的帖子中提到 jQuery Migrate 3.0.0 可以解决这个问题:链接:https://code.jquery.com/jquery-migrate-3.0.0.js

由于出现错误的是下面语句:
// Support: IE <=11 only // Running getBoundingClientRect on a // disconnected node in IE throws an error if ( !elem.getClientRects().length ) { return { top: 0, left: 0 }; }

传入的 elem 是 window 对象,自然window对象就没有 getClientRects 这些方法。而jQuery Migration中对此做了判断,如果传入非DOM节点对象,就直接返回 { top: 0, left: 0 }

由此可以解决问题。FineUIPro v5.2.0也会包含这个更新,官网示例随后更新。

最后,多谢 @康师傅 及时发现这个问题


扫码加入【三石和他的朋友们】:http://fineui.com/fans/

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
推荐
 楼主| 发表于 2018-8-15 12:42:44 | 只看该作者
zy32002 发表于 2018-8-15 12:34
老大为什么要换成jquery3.0,是处于什么考虑的?话说jquery3 不兼容jquery1,对低版本的ie也不兼容。 ...

人往高处走,水往低处流。紧跟最新版本的好处有很多,比如遇到BUG可以及时得到修正,比如可以用到一些新特性,比如性能会好一些,比如.....

前段时间,我们的一位企业版客户遇到一个苦笑不得的问题,说是FineUI用的jQuery版本太低,有漏洞不给验收。这也是本次升级的一个出发点。

另外一点,jQuery v3.x支持IE9+,去除了IE8相关的代码,性能各方面都会好一点。以后IE11以下的浏览器都会逐渐消失,这是个潮流和趋势。

另:我们依然可以通过全局参数 JSLibrary=JQv1,来支持之前的jQuery v1.11.4,如果你还在对老掉牙的IE8做一定的支持,可以启用此参数。
沙发
发表于 2018-8-15 12:34:36 | 只看该作者
老大为什么要换成jquery3.0,是处于什么考虑的?话说jquery3 不兼容jquery1,对低版本的ie也不兼容。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-11-22 14:15 , Processed in 0.046693 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表