JQuery】jQuery UI 有哪些缺点?

2021-12-15 16:58发布

6条回答
aijingda
2楼 · 2021-12-16 15:51

一个很明显的缺点就是,太大。对于一些比较小的项目确实可以做到快速开发,但是现在的jQuery太臃肿了,有很多用不到的功能。所以现在有了很多精简jQuery的项目。

另外就是全DOM操作,钩子往往会依赖标签,如果依赖jQuery来搭建页面的话(比如后台输出json,然后jQuery loop一个列表出来),维护上会有困难。如果一改页面结构,很多依赖标签的选择器,一改起来js那块就得跟着大改。

还有就是jQuery的代码改起来不容易,如果真有项目特殊需求,要改一下jQuery代码来用就显得很麻烦。

Danke - 四有青年
3楼 · 2021-12-17 15:15

用jQuery UI并不是为了用它的UI,而是它那些封装良好的组件,比如draggable、sortable、resizable等。jQuery UI的UI早已过时,但它的组件却依旧好用得很,基本无bug,API设计合理,基本能满足你所有需求,文档齐全且易懂。如果让我自己写这些组件



上来打杂的
4楼 · 2021-12-18 10:34

优点:

简单易用

继承 jQuery 简易使用特性,提供高度抽象接口,短期改善网站易用性。

开源免费

采用 MIT & GPL 双协议授权,轻松满足自由产品至企业产品各种授权需求。

广泛兼容

兼容各主流桌面浏览器。包括IE 6+、Firefox 2+、Safari 3+、Opera 9+、Chrome 1+。

轻便快捷

组件间相对独立,可按需加载,避免浪费带宽拖慢网页打开速度。

标准先进

支持 WAI-ARIA,通过标准 XHTML 代码提供渐进增强,保证低端环境可访问性。

美观多变

提供近 20 种预设主题,并可自定义多达 60 项可配置样式规则,提供 24 种背景纹理选择。

开放公开

从结构规划到代码编写,全程开放,文档、代码、讨论,人人均可参与。

强力支持

Google 为发布代码提供 CDN 内容分发网络支持。

完整汉化

开发包内置包含中文在内的 40 多种语言包。

缺点、不足

  • 1.代码不够健壮:缺乏全面的测试用例,部分组件 Bugs 较多,不能达到企业级产品开发要求。

  • 2.构架规划不足:组件间 API 缺乏协调,缺乏配合使用帮助。

  • 3.控件较少:相对于 Dojo、YUI、Ext JS 等成熟产品,可用控件较少,无法满足复杂界面功能要求。


征戰撩四汸
5楼 · 2021-12-19 14:59

1.代码不够健壮:缺乏全面的测试用例,部分组件 Bugs 较多,不能达到企业级产品开发要求。

2.构架规划不足:组件间 API 缺乏协调,缺乏配合使用帮助。

3.控件较少:相对于 Dojo、YUI、Ext JS 等成熟产品,可用控件较少,无法满足复杂界面功能要求。


IT学习助手 - qq:2676427015
6楼 · 2022-01-14 13:22

  jQuery EasyUI是一组基于jQuery的UI插件集合,为我们提供了大多数UI控件的使用,如:accordion,combobox,menu,dialog,tabs,tree,validatebox,window等等。

  jQuery EasyUI是一组基于jQuery的UI插件集合,而jQuery EasyUI的目标就是帮助web开发者更轻松的打造出功能丰富并且美观的UI界面。开发者不需要编写复杂的javascript,也不需要对css样式有深入的了解,开发者需要了解的只有一些简单的html标签。


回答: 2022-01-14 13:42

1、代码不够健壮:缺乏全面的测试用例,部分组件 Bugs 较多,不能达到企业级产品开发要求。

2、构架规划不足:组件间 API 缺乏协调,缺乏配合使用帮助。

3、控件较少:相对于 Dojo、YUI、Ext JS 等成熟产品,可用控件较少,无法满足复杂界面功能要求。


小光光321
7楼 · 2022-03-24 14:33

jQuery 那种选择器的设计 ,不利于项目工程化,因为视图的改变有可能影响到网页应用逻辑的更改,而逻辑的更改也有可能影响到页面。在设计网页时没法获取对应的逻辑和界面的组合,而vue分离了视图和逻辑代码,可以分块的书写。所以在技术选型采用vue 。

相关问题推荐

  • 回答 9

    jQuery是库,不是框架。库只管引进来使用,除了库接口,没有其他约束,随便怎么用,free style。而框架则有着各种各样的严格约束。

  • 回答 4

    *{undefinedmargin:0px;padding:0px;}.main{undefinedcursor:pointer;}.list{undefinedborder:1px solid black;display:none;}.list li{undefinedcursor:pointer;border:1px solid red;list-style:none;}#noPopEvent...

  • 回答 6

    id、name、class这三种会了就行了,后面在实践中慢慢学习吧。。不过现在纯前端好像都不咋用jquery了

  • 回答 5

    文档过一遍,感觉理解了写一个todolist,然后把react-router文档过一遍,写一个todolist,最后把redux文档看一遍,写一个todolist。这样下来,react全家桶基本理解了

  • 回答 6

    前端技术每年都会不断更新,一位好的Web前端开发工程师在知识体系上既要有广度,又要有深度,前端技术工程师缺口非常大。技术的发展规律其实,技术的发展趋势就是追求更高的复用性,更简便的业务代码写法,所以最终都会要求跨平台、都会彻底分离非业务逻辑。j...

  • 回答 3

    有一定影响,而且不仅对蜘蛛,如果用户浏览器把js禁用的话也显示不了

  • 回答 5

    国外还有 Amazon, 全球最大的电子商务网站。还有微软,很多很多。

  • 回答 4

    前端框架的vue.js,angular.js,可视化工具d3.js,移动端:zepto等

  • 回答 6

    最接近替代品的当然是Zepto。不过如果你没有legacy的代码要维护,又只需要支持green browsers,可以考虑完全用标准api。

  • 回答 1

    1

  • 回答 5

    两个都不学写网站一点问题都没有。工具而已,写代码的时候突然需要了现学现用都行。jquery 是方便你不使用原生js的情况下直接调用一些控制element动态响应的抽象方法 的函数库而boostrap是一个前端框架,主要作用是内置了很多全局css样式,写前端的时候随便用...

  • 回答 2

    1. jQuery 里面有很多东西是出于兼容性,历史遗留。比如 .ready() 之类的函数,为什么会很scroll 有关,那是为了兼容某些ie。这种代码对于编程思想来说不仅没用,而且是杂音,你要筛选出来就得了解这段代码的变动,费心费力得不偿失。2. jQuery 里面的代码不...

  • 回答 2

    angularjs这个类库本身就借助了jquery的一个弱化版本jqLite来操作html中的dom树,所以angularjs中使用jquery是完全没有问题的,相反的如果你使用angularjs做项目时间越长你会发现angularjs只有配合jquery才能更好的进行开发。尤其在directive中操作dom元素,...

  • 回答 3

    jquery有关于淡入淡出效果的方法,一共四个,分别是:fadeIn()fadeOut()fadeToggle()fadeTo()jQuery fadeIn() 用于淡入已隐藏的元素$(button).click(function(){   $(#div1).fadeIn();   $(#div2).fadeIn(slow);   $(#div3).fadeIn(3000); });jQuery .....

  • 回答 4

    下面我们要在这个对象上挂载一个extend方法,用于让开发者为我这个对象添加功能和方法。12345var $ = {   extend:function(ob){      /**暂时不管里面写什么**/   }  }现在,我们就在$这个对象上添加了一个extend方法,外部可以通过$.extend(obj...

没有解决我的问题,去提问