Twitter Bootstrap vs jQuery UI? [đóng cửa]


214

Tôi đã sử dụng jQuery UI cho một số cải tiến trang cơ bản. Nút và kiểu dáng đầu vào và hộp thoại phương thức. Bây giờ tôi đã đi qua Bootstrap và nó trông khá tốt.

Có ai có kinh nghiệm về việc sử dụng jQuery UI đến Bootstrap không? Đây là những gì tôi đang nghĩ phải làm nhưng trước khi tôi làm điều này tôi muốn nhận thức được những vấn đề tôi có thể gặp phải.


4
Một giải pháp khả thi có thể chưa có khi điều này được hỏi ... Addy Osmani và nhóm của anh ta đang làm việc để hợp nhất hai người - nếu bạn bị mắc kẹt giữa họ, hãy kiểm tra và có thể bạn có thể có mọi thứ bạn muốn! - addyosmani.github.io/jquery-ui-bootstrap
đèn đường

1
Làm thế nào để cập nhật câu trả lời (2014!)? Có ai có thể bắt đầu một tiền thưởng ở đây không?
Peter Krauss

Từ trang web Bootstrap - "Bootstrap chỉ hỗ trợ một cửa sổ phương thức tại một thời điểm. Các phương thức lồng nhau không được hỗ trợ vì chúng tôi tin rằng chúng là trải nghiệm người dùng kém." - Đau buồn lắm.
George Beier

Câu trả lời:


133

Tôi có một vài dự án.

Sự khác biệt lớn nhất trong quan điểm của tôi

  • Giao diện người dùng jQuery an toàn, nó hoạt động chính xác và hoạt động tốt trong các trình duyệt cũ, trong đó Bootstrap dựa trên CSS3, về cơ bản có nghĩa là TUYỆT VỜI trong các trình duyệt mới, không quá tuyệt vời trong cũ

  • Tần suất cập nhật: Bootstrap đang nhận được một số cập nhật lớn với các tính năng mới tuyệt vời, nhưng đáng buồn là chúng có thể phá vỡ mã trước đó, vì vậy bạn không thể cài đặt bootstrap và cập nhật khi có một bản phát hành chính mới, về cơ bản nó đòi hỏi rất nhiều mã hóa mới

  • Giao diện người dùng jQuery dựa trên cấu trúc html tốt với các chuyển đổi từ JavaScript, trong khi Bootstrap dựa trên cấu trúc nội tuyến trực quan và có thể tùy chỉnh. (gọi một widget trong JQUERY UI, xác định nó trong Bootstrap)

Vậy chọn gì?

Điều đó luôn phụ thuộc vào loại dự án bạn đang làm việc. Là các vật dụng mát mẻ và nhanh chóng tốt hơn, hoặc người dùng của bạn thường sử dụng các trình duyệt cũ?

Tôi luôn luôn sử dụng cả hai, vì vậy tôi có thể sử dụng tốt nhất của cả hai thế giới.

Dưới đây là các liên kết đến cả hai khung, nếu bạn quyết định sử dụng chúng.

  1. Giao diện người dùng jQuery
  2. Bootstrap

2
-Cảm ơn đã dành thời gian trả lời. Nhu cầu của tôi là một cái gì đó hoạt động trên IE9 hoặc các trình duyệt phiên bản mới hơn có hỗ trợ CSS3 khá tốt. Bootstrap đang bắt đầu tốt cho tôi. Một câu hỏi. Tôi đang sử dụng ASP.MVC. Tôi nhận thấy một cái gì đó về việc cần ít hơn. Boostrap có hoạt động tốt với nền tảng Microsoft ASP MVC không? Trường hợp "ít" phù hợp?
Jessica

Bạn có thể biên dịch các tệp ít hơn thành các tệp .css. Xây dựng bootstrap (sử dụng make), sẽ tạo sẵn sàng sử dụng các tệp CSS. Theo cách đó bạn không cần sử dụng ít hơn.
mikaelb

3
LESS là một khung css. Không cần thiết phải sử dụng Boostrap (chúng có phiên bản CSS / JS thông thường), nhưng với LESS, bạn có thể dễ dàng tạo ra các biến trong CSS (thay đổi màu sắc, v.v.), làm cho nó phụ thuộc, có chức năng. Xem tại đây: lesscss.org và có phiên bản BETA cho trình biên dịch trong .NET, xem: dotlesscss.org
Marco Johannesen

20
Làm thế nào để bạn thậm chí sử dụng "tốt nhất của cả hai thế giới"? Gần nhất tôi đã nhận được là bằng cách sử dụng jQueryUI Bootstrap (về cơ bản là một chủ đề jQueryUI) nhưng nó vẫn được thiết kế cho Bootstrap 1.4, chứ không phải 2.0 và có xung đột khi cố gắng sử dụng JS cho các nút, v.v.
Adam Lynch

3
@ PhoenixX_2 thử! Ví dụ: trong bootstrap, bạn viết tất cả các lớp trên phần tử nút (ví dụ: button button-primary button-smalltrong jQueryUI, bạn gán một phần tử là một nút, tức là chỉ cần thêm "btn" và sau đó thông qua JS bạn tạo nó thành một nút $(".btn").button(). Điều này có nghĩa là trong Bootstrap bạn định nghĩa nó trong HTML và trong jQueryUI, bạn xác định nó trong JS. Tiêu cực trên Bootstrap là bạn cần chỉnh sửa HTML nếu bạn cập nhật / thay đổi một cái gì đó (ví dụ: phiên bản Bootstrap) trong đó jQueryUI bạn chỉ cần thay đổi JS thường dễ dàng hơn. Có những mặt tích cực và tiêu cực với cả hai! :)
Marco Johannesen

73

Đã sử dụng cả hai, Bootstrap của Twitter là một bộ công nghệ vượt trội. Dưới đây là một số khác biệt,

  • Widgets : Giao diện người dùng jQuery chiến thắng ở đây. Tiện ích ngày mà nó cung cấp vô cùng hữu ích và Twitter Bootstrap không cung cấp gì cả.
  • Giàn giáo : Bootstrap thắng ở đây. Lưới của Twitter cả chất lỏng và cố định là đỉnh cao. Giao diện người dùng jQuery thậm chí không cung cấp hướng này để bố trí trang cho người dùng cuối.
  • Tính chuyên nghiệp vượt trội: Bootstrap sử dụng CSS3 đang đi trước, giao diện người dùng jQuery có vẻ như được so sánh.
  • Biểu tượng : Tôi sẽ đi trên cái này. Bootstrap có các biểu tượng đẹp hơn so với jQuery UI , nhưng tôi không thích các thuật ngữ một chút, Glyphicons Halflings thường không có sẵn miễn phí, nhưng một sự sắp xếp giữa Bootstrap và người tạo Glyphicons đã giúp bạn phát triển miễn phí. Để cảm ơn, chúng tôi yêu cầu bạn đưa một liên kết tùy chọn trở lại Glyphicons bất cứ khi nào thực tế.
  • Hình ảnh & hình thu nhỏ : đi đến Bootstrap , jQuery UI thậm chí không trợ giúp ở đây.

Ghi chú khác,

  • Điều quan trọng là phải hiểu làm thế nào hai công nghệ này cạnh tranh trong các lĩnh vực quá. Có rất nhiều sự chồng chéo, nhưng nếu bạn muốn giàn giáo đơn giản và tạo chất lỏng cố định / chất lỏng thì Bootstrap không phải là một công nghệ khác, đó là công nghệ tốt nhất. Nếu bạn muốn bất kỳ tiện ích đơn lẻ nào, Giao diện người dùng jQuery có thể thậm chí không nằm trong top ba. Ngày nay, jQuery UI chủ yếu chỉ là một món đồ chơi cho tính nhất quán và bằng chứng về khái niệm cho việc tạo widget phía máy khách bằng cách sử dụng một khung thống nhất.

34

Bạn có thể sử dụng cả hai với tương đối ít vấn đề. Twitter Bootstrap sử dụng jQuery 1.7.1 (khi viết bài này) và tôi không thể nghĩ ra bất kỳ lý do nào khiến bạn không thể tích hợp các thành phần UI Jquery bổ sung vào các mẫu HTML của mình.

Tôi đã và đang sử dụng kết hợp HTML5 Boilerplate & Twitter Bootstrap được xây dựng tại Initializr.com. Điều này kết hợp hai mẫu khởi động tuyệt vời vào một dự án khởi động tuyệt vời. Kiểm tra các chi tiết tại http://html5boilerplate.com/http://www.initializr.com/ Hoặc để bắt đầu ngay, hãy truy cập http://www.initializr.com/ , nhấp vào "Bootstrap 2" và nhấp vào nút "Tải xuống". Điều này sẽ cung cấp cho bạn tất cả các js và css bạn cần để bắt đầu.

Và đừng sợ hãi bởi HTML5 và CSS3. Công cụ khởi động HTML5 và HTML5 bao gồm các polyfill và mã cụ thể IE sẽ cho phép tất cả các tính năng hoạt động trong IE 6, 7 8 và 9.

Việc sử dụng LESS trong Twitter Bootstrap cũng là tùy chọn. Họ sử dụng LESS để biên dịch tất cả CSS được Bootstrap sử dụng, nhưng nếu bạn chỉ muốn ghi đè hoặc thêm kiểu của riêng mình, họ cung cấp tệp css trống cho mục đích đó.

Ngoài ra còn có một tệp js trống (script.js) để bạn thêm mã tùy chỉnh. Đây là nơi bạn sẽ thêm các trình xử lý hoặc bộ chọn của mình cho các thành phần jQueryUI bổ sung.


Câu trả lời chính xác. Câu hỏi nhanh khó, jquery ui thực sự cung cấp gì hơn không được bao gồm trong twitter bootstrap và các plugin của nó?
MindWire

5
Xin lỗi, chỉ cần nhìn thấy điều này. Theo như các widget js, jQuery UI có một bộ đếm ngày và thanh trượt, không được bao gồm trong Bootstrap. Ngoài ra jqUI bao gồm các tương tác và hiệu ứng, chẳng hạn như kéo và thả, hiển thị / ẩn hình động, chuyển đổi lớp và nhiều thứ khác. Kết hợp các tương tác của jqUI với các thành phần bố cục của Bootstrap có thể là một sự kết hợp rất mạnh mẽ.
eterps

6
Một vấn đề cần chú ý; cả hai dự án đều định nghĩa $ .fn.button theo những cách không tương thích.
Levi

27

Chúng tôi đã sử dụng cả hai và chúng tôi thích Bootstrap vì tính đơn giản và tốc độ phát triển và nâng cao của nó. Vấn đề với giao diện người dùng jQuery là nó di chuyển với tốc độ của ốc sên. Phải mất nhiều năm để đưa ra các tính năng phổ biến như Menubar, Điều khiển cây và DataGrid đang trong giai đoạn lập kế hoạch / phát triển. Chúng tôi chờ đợi chờ đợi và cuối cùng đã từ bỏ và sử dụng các thư viện khác như ExtJS cho sản phẩm của chúng tôi http://dblite.com .

Bootstrap đã đưa ra một bộ tính năng khá toàn diện trong một khoảng thời gian rất ngắn và tôi chắc chắn rằng nó sẽ vượt qua giao diện người dùng jQuery khá sớm.

Vì vậy, tôi thấy không có điểm nào trong việc sử dụng thứ gì đó cuối cùng sẽ bị lỗi thời ...


43
Mọi thứ cuối cùng sẽ bị lỗi thời. Không có điểm nào trong việc làm bất cứ điều gì.
tilgovi

6
Đúng vậy, chúng ta chỉ cần chọn cái mà chúng ta nghĩ sẽ giữ vững lâu hơn.
Rajiv

8
Không, bạn chỉ cần chọn một thứ sẽ mang lại tiền từ khách hàng của bạn. Một khi bạn làm cho nó hoạt động, nó sẽ tiếp tục hoạt động trong một thời gian, ngay cả khi nó không còn hợp thời, vì vậy mối quan tâm thực sự duy nhất là tiền.
Adam
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.