I still think the bandwidth numbers are too optimistic in real world scenarios. I measured it several times in my country Switzerland under different — but realistic — situations.
In many cases the real bandwidth was far from the theoretical value. However: get rid of one not so necessary pic and you saved the amount of data you need for jQuery or even much more. So I use jQuery without hesitation. Your comment comes off a bit flippant, like you read the headline and then skipped to the comments section to preach.
The article clearly explains that there is more to the question than just file size. How does performance on the client work with gzipped resouces?
The whole gzipping thing is just to increase performance across the wire, right? You make a good point. Gzipping is intended to decrease download sizes, but it does mean the browser has to unpack the resources. It seems like there would have to be a cost — especially on older devices.
Great article. You l said you ran those tests in a Mac. I run Windows 8. What a beautifully written, evidenced and thought-out article!
So useful. I did. Do you have the javascript timing page you mentioned somewhere so we can test with out own devices? Its very often about latencies and bandwidth.
I saw UI worst cases generating much more frustration than some millis in parsing. Thanks a lot for the detailed post. I have always had this question on my mind yet many WordPress themes include jQuery as a default including the one used on my responsive website. I would very much like to make my website faster and ditching jQuery was one of the way in mind. Yet, with your article, I will turn to minifying other parts first.
Great post. It mainly says that whatever you do developing websites, you allways should to improve code efficiency. Anyway, the worst problem with jQuery is the lack of good practices using it. In a modern web site there are usually being loaded 4 to 7 libraries along with a lot of hand-written poorly optimized JS code. I have seen so many discussions about JQuery that I get the feeling that the library needs a freaking supercomputer in order to run smoothly.
There is no meaning in discussing anymore for a lib alone. The problem with old mobile devices is the same as older versions of IE in web development. At some point, if you want to offer better user experience you need to stop supporting them anymore although including JQuery to whatever code you are writing wont cause this nevertheless.
Nice that you kept it is unbiased as you did. Chrome talks about the way they precompile parts of JS to make the virtual machine as fast as it is today. I remember I was blown away last year with the performance of loops in JavaScript. I had to iterate over about items for some layout logic.
I thought it would make the browser hang for seconds, but it took only a couple of milliseconds. I guess this is another case for optimizing elsewhere, rather than trying to build your things without jQuery, Backbone etc. Even if it took no time to download and to execute first instance which from your results it is arguable whether that is the case the library could have a pattern of memory consumption that makes it unusable on memory limited devices.
Can you explain how you can remove a library like jQuery after developing a mobile app most like with jQuery Mobile? The tool helped developers build UI components such as form controls and date pickers using the best practices back then. Today, jQuery UI continues to be an important testbed for jQuery Core updates, helping the maintainer team spot bugs and interoperability issues that arise as the web platform evolves.
Thousands of open source jQuery widgets and plugins were created to handle previously tricky problems, like showing and hiding elements, rotating through image carousels, or picking dates on a calendar. The jQuery ecosystem became a playground full of tools for making new and interesting interactions possible on the web. Developers might have to go searching for the right tools or worse, spend significant time swapping through several plugins to figure out which one worked best. Further, there were few examples of best practices in user experience on the web, so visitors to one website could have vastly different and thus confusing interactions when they performed a similar task on another website.
Members of the jQuery Core team wanted to help developers write performant, high-quality, and reusable jQuery components for their sites and applications. After some discussion, the idea for a second library with strict standards for coding, documentation, and theming was born.
In September , jQuery UI officially launched as a set of user interface interactions, effects, widgets, and themes built on top of jQuery. Soon after, the team shifted their focus to provide a full set of APIs and methods to allow developers to create flexible, full-featured widgets that met high standards of quality.
CSS effects such as easing and animation were added in and helped developers create more modern, enhanced experiences. The team at Filament Group later added a ThemeRoller, allowing developers to get started quickly by providing customizable theme boilerplate. ThemeRoller is still operational today.
By the end of , jQuery UI had an exploding community of users, developers, and interaction designers regularly providing updates and improvements to the project as best practices and style preferences evolved. Between and , the community provided a variety of new official and unofficial themes and plugins, interoperability and other bug fixes, robust testing processes, and support for multiple versions of jQuery.
In that timeframe, the jQuery community had helped inspire dozens of other open source projects, pattern and component libraries. But newer CSS frameworks and approaches were taking hold, and slowly the community moved on to other projects.
The UI team and jQuery Mobile teams merged, and the group focused more on maintenance and compatibility with jQuery Core. The scope of the project and the inclusiveness of the community was responsible for helping countless web makers develop a love and appreciation for user experience, localization, internationalization, accessibility, and clean, reusable code. OpenJS Foundation will forever be grateful for the work of these open source developers and the impact they had on the ecosystem through their work.
Please join us in celebrating these developers and jQuery UI! The projects have suffered from lack of resources and funding and loss of contributors due to a variety of factors. These combined factors have nearly stopped development on both projects. Scott Gonzalez has lead the jQuery UI project for many years now and has helped to improve the quality tremendously. He has decided to step down from leading the project though he will still be helping in various ways.
In an attempt to best utilize resources we have decided to combine the 2 teams into a single team under the leadership of Alex Schmitz, a long time jQuery UI contributor as well as the lead for jQuery Mobile. What this means is that the combined contributors will be able to serve the projects better, since both projects are very tightly coupled as jQuery Mobile depends upon jQuery UI. This does not mean that the two projects will become a single project. Both projects will continue to exist in their own repositories.
However, we do hope to continue reducing the amount of duplicated code and widgets in the projects moving anything common to jQuery UI. In the past, when someone wanted to join the jQuery UI or jQuery Mobile teams we expected them to contribute to the library as a whole.
We think going forward this needs to change; we will now be looking for and accepting people that are just interested in maintaining a single piece of the library, requiring a much smaller time contribution. So, if someone is just interested in working on sortable they could just lead the sortable widget without having to contribute to any other parts of the two libraries.
This will not only allow for more focused and less time consuming contribution but also allow better specialization within our team. In the past we have done all communication through IRC.
Over time however, we have seen a large decrease in the number of people on IRC while other projects have had great results with easier to use tools like Slack. As a result, we will be switching to Slack for daily communication and meetings. We hope that this will ease contributions and interactions with potential new team members. Anyone who is interested can feel free to reach out to Alex Schmitz, the new team lead for both projects, join our slack channel or even find us on IRC we are still there.
The first alpha release for jQuery Mobile 1. For the first time, we have our full changelog , download builder , and API documentation ready during the pre-release phase. Note: please do NOT use the comments section of this blog post for reporting bugs. Bug reports should be filed in the jQuery Mobile Bug Tracker and support questions should be posted on the jQuery Forum. If you have feedback on us doing our first beta release for jQuery Mobile 1. Thank you. It has been a long time since the release of jQuery Mobile 1.
First and foremost, I would like to say that we are very much still alive and working. That is because we moved our development to a jQuery Mobile 1. This work ended up taking a lot longer than expected which has delayed the release of 1. Sometime it gets stucked at the loading.
I have tested with Android 2. All same slow result. Replies Re: JQuery Mobile too too slow!! I got a 'Malicious Cookie' warning when browsing above link Leave a comment on John Chacko's reply.
I have found how to speed up jquery by an amazing factor! Here my Performance test started in the first page of the application: lifecycle pageshow. It also works faster if starting the search with UtilDom followed by JQuery. Thibaut de Sany Mobile Expert. It's faster still to simply cache jQuery objects in variables in your code as recommended. Not sure what the point is of adding an extra layer of code. It certainly doesn't add to readability.
Why not just add appropriately-named variables to your code to hold often-used objects? Leave a comment on watusiware's reply. Simply because, when calling multiple times the same variables in successive call of the same method, UtilDom warrants retrieving things from cache.
It is a kind of references singleton class. PS: JQuery 1. You're totally missing the point made by watusiware. If you want to cache references to an element, then use a simple variable for frequently accessed objects instead of inventing an extra unnecessary caching layer. This: UtilDom. Leave a comment on bagman's reply. Except that UtilDom garantees the same reference in the whole application Can you tell me what you did to fix it?
I'm having the same problem.
0コメント