-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Eliminate Dependency on jQuery #1175
Comments
We're using all the toolkit provided in jQuery. There may be a way to roll with Zepto, but I haven't had a chance to check it out. Most of the stuff is pretty necessary for our project, selector engine, dom insertion, etc. |
I wish you guys would reconsider opening this. jQuery is really slow, especially on smaller devices, and there is very little that jQuery does today that you couldn't do in a much, much smaller library. I encourage you to learn more about jQuery's diminished position in this industry. I would love to use Semantic-UI, but this is a show-stopper. |
👍 |
would love to use Semantic-UI, but this is a show-stopper. Same here jQuery is a no go for me |
I would love a good overview of the parts depending on jQuery. Semantic UI is a clear winner because of the amount of elements, but depending on jQuery sounds scary for users of libraries based on a virtual DOM such as React. If I want to use Semantic UI without jQuery, which components will stop working? I am ok with loading jQuery, but it seems more of an unnecessary burden every year that goes by. |
@fgarcia i've found a way to handle it in React by just applying conditioned css classes using React states, this enables widgets like menus, drop-downs, etc, but not animation |
Also can't do validation of forms without jquery. |
I really don't understand why to close this issue. |
I don't think removing jQuery is an easy task or even practical considering the large amount of widgets there are in Semantic-UI but it would be great having two versions of Semantic-UI, something like the "base" version and then the "extras" requiring jQuery. |
+1 for removal of the jQuery dependency. The extra weight makes it just that much harder for someone to justify dropping semantic into a production project, especially if it's only for one or two components. |
jQuery dependency is a show-stopper for me as well. I understand the amount of time it would take to transition the project over to pure JS or a smaller library (see Bliss.js), but in the end it would attract a ton of developers. All the use cases for jQuery are honestly overshadowed by browser support for |
I came across semantic-ui and was quite impressed by it, until I found that I need jQuery to get it to work. Specially if one wants to use semantic-ui with angular or react. I would also suggest to drop jQuery. I'd be happy to help with that. |
+1 |
This topic is closed on 22 Oct 2014. Today is 20 Mar 2016. The JavaScript and browser world has a huge processing. It's apparently jQuery is not necessary nowadays. I understand it's not a easy task to remove all jQuery dependency, but I think it's the right way. I think the advice of two versions from @fgarcia is a good idea. |
+1 |
Semantic UI's ember module doesn't work with the new Ember Fastboot because of its jQuery dependency. It would be great to continue using the framework while gaining the benefits of fastboot. |
Please reopen this. As everybody above has said, jQuery adds a lot of unnecessary weight to this. I lie this library over Foundation and Bootstrap, but I don't want to add jQuery to my project just for Semantic UI |
I reopen this since so many people have asked for this. And since Jack expressed his opinion 1.5 years ago, things might have changed since then. At least we should keep this open as a feature request. |
Yay! |
Seems fair to leave it open, although this would be nothing short of a rewrite of all js components. |
@jlukic How many of the components would require rewrite? How many are jQuery based, in short? I'd be happy to take a look at a few, but many are likely over my head. |
I'm sure there are plenty of people who will want to take this on; perhaps we can start a milestone to track issues against? |
Ok, just to clarify if I understood correctly:
|
Out of curiosity, what is the use case for excluding jQuery as a viable option? |
Is still now jquery included as dependency? If I type $(selector) it works so I think yes. |
I wanted to use Semantic-UI for a project and then I came across JQuery dependency and all a sudden it didn't feel right. I guess I will stick with Bulma for now. |
No, actually the React integration is jQuery free. Semantic-UI is jQuery dependent: https://semantic-ui.com/introduction/getting-started.html check the HTML code towards the bottom.
On 1 February 2018 at 23:59:20, Tom Davidson ([email protected]) wrote:
The intro claims to be JQuery free. Should this be closed? @rhamedy where did you find the JQuery dependency?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.
|
The primary way I use Semantic UI is in CSS only form with Elm. @jlukic has done a great job making nearly all elements controllable through CSS classes, which fits very easily into VirtualDom-based frameworks. Previously, the documentation did not make it obvious which classes to apply to control the behavior, so I would have to play with the controls on the site and inspect the DOM to see. But now the docs mostly have this information. Aside from triggering animations with CSS classes (Transitions section), I can't think of an element that I had to avoid using because it required jQuery. Edit: Some elements like Search/Rating still do not document the classes needed to control the states without jQuery. |
I would support a de-jQuery-ification. Semantic UI is a superb library (I hate the word 'framework') I'd like to use inside a WebExtension we build but jQuery inside WebExtensions raises issues, some being quite painful. Daniel (former W3C CSS WG Co-chair) |
I'm rewriting a fork to remove the jQuery dependency, it's about time someone did something about this mess. You can follow it's progress here: https://github.com/morganbarrett/Vanilla-Semantic-UI VIVA LA VANILLA |
do we have any plans for this? the issue was closed 4 years ago, would be good to rethink / revisit some "set in stone" ideas |
Don't think there are any plans for that. Unless guys who maintain FomanticUI want to surprise us 😄 |
@jlukic if people start contributing JS components without jQuery, would you accept PRs? I'd do it for dropdown. Another Elm user, loving semantic UI and really the only thing that bothers me so much is jQuery. |
Is there an official list of components that utilises jQuery? I'd like to help remove the jQuery dependency, unless it's deeply integrated. |
Seeing how you initialize pretty much everything using the stuff like |
@gerardmrk head over to vanilla semantic UI and contribute there |
See fomantic/Fomantic-UI#319 (comment) for ambitious plans at Fomantic |
I was really looking forward to using Semantic-UI from the moment I heard about it, but JQuery is a real dealbreaker. Please consider removing JQuery as a dependency. |
2020 |
@Dzefo @alexboor Please see my previous comment. Semantic UI is usable purely in CSS form. See npm package |
@kspeakman What about modules like dropdown? I still haven't found a clean way to use dropdown on |
@hdasdoria You use the same technology that you are already using for handling button clicks, input changes, etc. If you are already using jQuery, then keep using it. Only the Semantic lib doesn't have to make you require it specially. All of the states are controllable with only CSS classes. But these are not well documented or rather are documented as "call jQuery in this way" instead of the actual classes used. For drop-downs we use the plain select and |
The dependency on jQuery is largely unnecessary, and this library would be much smaller and even more performant if it were to find more specialized tools to implement the features that jQuery currently provides.
The text was updated successfully, but these errors were encountered: