在一个丑陋的大代码库中查找jqueryui的用法
我最近继承了一个大型、丑陋的生产网站代码库的维护工作。 把你的眼睛伸出来。虽然它很大,但大部分是PHP代码,除了UI中的一些“ajaxy”功能外,它没有太多的JS 我们目前的主要问题是网站太重了。主页目前的重量为1.6MB,所以我正在努力清理一些东西 其中一个主要的浪费是每个页面都包含jQueryUI库,但我认为它根本没有被使用。它肯定不会在主页和大多数页面中使用,所以我只想在必要的地方包含它 我对jQuery不是很有经验,我更像是一个原型,所以我想知道。有什么我可以搜索的东西可以让我知道jQuery UI在哪里使用吗?在一个丑陋的大代码库中查找jqueryui的用法,jquery,jquery-ui,Jquery,Jquery Ui,我最近继承了一个大型、丑陋的生产网站代码库的维护工作。 把你的眼睛伸出来。虽然它很大,但大部分是PHP代码,除了UI中的一些“ajaxy”功能外,它没有太多的JS 我们目前的主要问题是网站太重了。主页目前的重量为1.6MB,所以我正在努力清理一些东西 其中一个主要的浪费是每个页面都包含jQueryUI库,但我认为它根本没有被使用。它肯定不会在主页和大多数页面中使用,所以我只想在必要的地方包含它 我对jQuery不是很有经验,我更像是一个原型,所以我想知道。有什么我可以搜索的东西可以让我知道jQu
我要找的是“公共字符串”、组件名称等 例如,如果这是脚本式的,我会寻找像“可拖动”、“效果”之类的东西。 对jQueryUI有什么建议吗 (当然,如果你能想出一种更有效的方法,在不使用标签的页面上删除标签,同时又不破坏所有内容,我很乐意听听) 谢谢!!
Daniel这个库实际上应该只占页面大小的19k
但是您可以搜索$('或$。因为大多数(如果不是全部的话)jquery调用都以$开头。我建议搜索
$(文档).ready
或尝试找出代码库用于检查DOM是否已准备好进行jquery交互的等效项。由于UI添加需要DOM,因此对它们的所有调用都将在这些函数中-您可以看到它们发生的位置,并且可以在它们中签入任何常见的jquery UI有一个标准命名修道院与该列表相比,您主要在寻找相应的方法:
- 等等
此外,如果它是一个选项,我会考虑,并且,如果你使用一个默认主题。
< P>我的建议是查看jQuery UI演示页面——并且查看每个演示并搜索每个演示中的一个或两个关键字,就像你可能会为Sractululy所做的那样。祝你好运。见本文:
它用于生成大的、丑陋的regexp 我使用它作为基础,得到了下一个regexp:\.\s*(手风琴|自动完成|按钮|按钮集|日期选择器|对话框|菜单|进度条|选择菜单|滑块|微调器|选项卡|工具提示|效果|开关类|开关类|可拖动|可拖放|鼠标|可调整大小|可选择|可选择|可选择|可取消选择|可重新选择|唯一ID |(盲音)反弹(盲音)反弹(盲音)反弹(盲音)反弹(盲音)反弹(盲音)反弹(盲音)反弹(盲音)反弹(盲音)反弹(盲音)反弹(盲音)反弹(盲音)反弹(弹弹音)反弹(弹弹音)剪辑(弹音)剪辑(弹音)剪辑(弹音)剪辑(弹音)剪辑(弹音)下降(弹音)下降(弹音)爆炸,爆炸,褪色(折折折,折叠(折)折叠,折,折,折,折,折,折,重,折,重,突出突出突出突出(突出突出)点,波波,规模,规模,摇摇摇(震震震级)摇摇摇,规模,摇摇摇(摇摇,规模,规模,摇摇摇,规模,规模,摇摇,规模,规模,摇摇,规模,规模,规模,摇摇摇,规模,规模,规模,摇,规模,规模,规模,规模,滑,规模,滑,规模,规模,滑,摇,easeInSine | easeOutSine | easinoutsine | easeinrc | easeOutCirc | easeInOutCirc | easeInElastic | easeOutElastic | easeInBack | easeInOutBack | easeInBounce | easeInBounce | easeInOutBounce | easeInOutBounce | | | | | easeInBounce | | easeInOutBounce | | | | | | | 124
这里可能有很多误报,但我认为这是一个好的开始。在任何情况下,您都需要手动检查所有匹配项。如果您正在发送适当的缓存头,或使用CDN(例如,谷歌的,哪个缓存头做得适当),那么客户端不会在每次加载页面时都下载这个。不是这样吗?如果不是这样,你还有一个单独的问题需要解决,重新下载静态内容是不好的。我也在解决这个问题,尼克,但是首页的第一次点击仍然是不必要的,而且我们也因为这个问题而遇到了很大的带宽问题s、 站点可能没有对$(文档)的引用。ready
,或jQuery(文档)
,或something(文档)
,或$(function(){/code>不带文档
,等等。有许多快捷方式,其中没有一个是jQuery UI特定的。他想删除jQuery UI,而不是jQuery:)或搜索jQuery(如果代码库使用它而不是$('以避免任何可能的命名冲突。@Chad,不确定这是问的问题。我想他想找到jQuery的使用位置。如果库包含在母版页级别,那么您只能找到“jQuery”这里。需要搜索特定的参考资料,$是一个相当好的参考资料。@griegs-我想你们没有读过这个问题:)他想删除jQuery用户界面,而不是jQuery核心。@griegs-有一个惯例,我只是为此添加了一个更完整的答案……但我认为这不是解决OPs速度问题的合适方法,我尝试了其他一些技巧。@griegs-看看jQuery.noConflict调用。因为他有一个“大而丑陋的代码库”我认为可能有多个JS库,这可能意味着最初编写它的人使用了noConflict选项$(在任何情况下,我确实——意外地——忽略了他询问的UI库。尼克,谢谢你的回答。我现在的主要问题是,你第一次访问网站时,你会得到一个188kb的文件(它已经缩小了,而不是压缩了,我也在处理这个问题).至于谷歌的AJAX主机,我也尝试过,但这是一个在阿根廷为阿根廷观众提供的服务器。信不信由你(我几乎做不到),当我们没有过载时,JS文件从我们的服务器上加载的速度比谷歌的更快。我可能仍然会将其移到底部并向谷歌索取,但如果我能将其全部删除,那就更好了。谢谢!@Daniel-要记住的是谷歌在地理上也是平衡的,你知道吗