2008-09-16 71 views
18

Tôi đang tìm một khung JavaScript nhẹ có mục đích chính là trừu tượng hóa các khác biệt của trình duyệt. Tôi chủ yếu sử dụng nó để tạo ra các phần tử giao diện người dùng mới và tôi không cần nhiều thứ khác ngoài cái gì đó mang lại cho tôi nền tảng ngôn ngữ độc lập và DOM.Khung JavaScript nhẹ tốt nhất là gì?

+0

Điều này đã được hỏi nhiều lần - ARGH! Nếu tôi có khả năng, tôi sẽ đóng/xóa nó trong một nhịp tim. Vui lòng tìm kiếm trước khi đăng –

Trả lời

16

Có 3 JS thư viện mà tôi hiện đang sử dụng: Prototype, jQueryMooTools. Prototype và jQuery được sử dụng rộng rãi nhất. jQuery và MooTools là nhẹ nhất.

MooTools có một tính năng đẹp trên trang web của họ cho phép bạn tạo tệp .js được nén tùy chỉnh chỉ với các mô-đun bạn cần, làm nhẹ nhất, tùy thuộc vào việc bạn đang làm. jQuery có cơ sở người hâm mộ cao hơn nhiều và hỗ trợ tốt hơn vì nó.

Trong số 3, tôi muốn giới thiệu jQuery, nhưng có lẽ không phải là một ý tưởng tồi để xem xét tất cả các tùy chọn có sẵn.

3

Tôi là người hâm mộ lớn của Thư viện Yahoo! User Interface (YUI). Nó có một tập hợp các công cụ thao tác DOM và một khung công cụ tiện ích khá vững chắc. Ngoài ra, bạn có thể trộn và kết hợp những gì bạn muốn sử dụng.

1

Cá nhân, khi tôi đang làm công việc phía máy khách, tôi đã yêu JQuery, trong đó có một phiên bản 15k. Có một đường cong học tập nhỏ, nhưng nó rất rất trơn.

2

Hãy thử DOMAssistant. Nó chỉ có 7 KB gzipped, thực sự nhanh và có hỗ trợ Unicode.

5

tôi sử dụng jQuery - đó là đơn giản và nhỏ, và tốt nhất của tất cả: Rất dễ dàng :)

1

Bạn có thể đóng gói bất kỳ mã JavaScript để làm cho nó nhẹ hơn, vì vậy câu hỏi có thể đi xuống mà làm bạn thích ? Tôi đi cho Prototype - có một phiên bản có sẵn được gọi là protopacked mà tôi nghĩ đến trong khoảng 20 KB.

2

Tôi thích JQuery hơn. Nó cũng có tài liệu tốt. JQuery

0

tôi khuyên bạn nên MooTools :-)

var theDiv = new Element('div', { 
    'id': 'theDiv', 
    'styles': { 
     'backgroundColor': '#BF1942', 
     'color': '#fff' 
    } 
}).toggleClass('someClass').inject($('someSibling', 'after'); 

Tôi thực sự thích khả năng đọc mã của nó.

1

MooTools khá nóng. Nó ngày càng lớn hơn một chút (cơ sở là 60 KB) để có thể nằm ngoài tầm với của bạn.

Nhưng nếu bạn thực sự chỉ sau DOM cơ bản, jQuery có lẽ sẽ là lý tưởng.

+0

Nó không nén lớn, nhưng nếu nó được nén và nén, nó gần 17k, chỉ lớn hơn jQuery một chút. Tuy nhiên, MooTools cũng là mô-đun, vì vậy bạn chỉ phải thực hiện những gì bạn cần, điều này có thể làm giảm kích thước hơn nữa. – VirtuosiMedia

2

Tôi cũng thích jQuery vì chức năng chọn mạnh mẽ "$" và muốn cung cấp một liên kết đến một tài liệu khác: Visual jQuery

0

Tôi đã cuộn của riêng mình trong nhiều năm, nhưng khi chơi với những người khác ở rất xa so với dojo + jquery. Tôi không có gì ngoài những điều tốt để nói về sự kết hợp của mootools (tốt nhất js ani tôi đã xem) + bộ dụng cụ gui hoặc yui

0

Tôi đồng ý với JQuery là tùy chọn nhẹ, có thể mở rộng. Công ty của tôi hiện đang sử dụng Extjs, rất lớn và phức tạp hơn cho những gì chúng tôi đang làm. Extjs rất tuyệt nếu bạn cần tạo một trang web nhanh chóng mà không cần thiết kế (nó đi kèm với tất cả đồ họa và phong cách để tạo bất cứ thứ gì bạn cần) nhưng khoảng 6MB và kết thúc là làm nhiệm vụ đơn giản hơn. :)

Nếu tôi có thể làm tất cả, điều này có thể xảy ra, tôi sẽ sử dụng JQuery.

0

midori là một khuôn khổ JavaScript nhẹ (chỉ 45K không nén). Nó hỗ trợ hầu hết các bộ chọn CSS2 và CSS3 để truy cập các phần tử DOM và không yêu cầu bạn phải tìm hiểu một API hoàn toàn mới. Bên cạnh chức năng DOM, sự kiện và Ajax chuẩn, nó cũng hỗ trợ các hiệu ứng hình ảnh cơ bản, kéo và thả, các menu bật lên và tự động hoàn thành trong số những thứ khác.

0

jQuery rất tốt. Điều gì sẽ rất tuyệt vời nếu chúng ta có thể thêm khung của chúng tôi vào danh sách các khung được đề xuất ở đây và cho phép những người khác bỏ phiếu trên khung mà họ thích nhất hoặc sử dụng - tức là cuộc thăm dò/khảo sát động.

0

Tôi đồng ý với Akselsson: DOMAssistant dường như chính xác những gì bạn yêu cầu - khung tương tác DOM nhẹ để trừu tượng hóa các khác biệt về trình duyệt. Test it for yourself...

1

Một phiếu bầu khác cho jQuery tại đây. Nhanh, nhẹ và bạn càng tìm hiểu nó, mã của bạn càng nhanh và ngắn gọn hơn.

2

Đây là biểu đồ so sánh mà tôi đã sử dụng để giúp đánh giá một số thư viện khác nhau ở đó.

Javascript Framework

Đó là bởi không có danh sách phương tiện mọi tính năng của tất cả các thư viện, nhưng cung cấp cho bạn một cái nhìn tổng quan tốt để thu hẹp lựa chọn của bạn với những gì khuôn khổ bạn nên đào sâu hơn vào để xem nếu nó đáp ứng nhu cầu của bạn.

1

jQuery rất khéo léo và rất dễ học. Tôi đã sử dụng Moo trong quá khứ cho một số thao tác DOM cơ bản. Nó có ít dấu chân hơn nhưng ít chức năng hơn. Sự lựa chọn tốt nhất cho bạn chắc chắn phụ thuộc vào yêu cầu của bạn.

4

mooTools cũng là yêu thích của tôi. Giao diện của họ cho phép bạn lấy bao nhiêu hoặc ít tùy thích, vì vậy nếu bạn muốn thêm nhiều thủ thuật vào túi công cụ của bạn, nó khá dễ dàng để làm như vậy.

1

Mã YUI cơ bản - yahoo-dom-event.js - là 31KB và hoạt động rất độc đáo. Bạn nhận được tất cả các loại tốt đẹp event handling & DOM manipulation, và nó rất dễ dàng để sau đó thêm vào phức tạp hơn - và nặng hơn - công cụ nếu và khi bạn cần nó.

1

Chỉ là một gợi ý, nhưng tôi sẽ tìm một khung có các tính năng bạn mong muốn và không lo lắng quá nhiều về kích thước, trong vòng lý do. Hầu hết các khung công tác hiện đại như PrototypeJS hoặc JQuery không phải là lớn và có các phiên bản thu nhỏ (không gian bị loại bỏ, vv). Ngoài ra, bạn nên có trang web của bạn được cấu hình cho bộ nhớ đệm của các thư viện này. Thời gian duy nhất người dùng sẽ cần tải xuống thư viện là vào lần truy cập đầu tiên hoặc bất kỳ lượt truy cập nào sau khi họ xóa bộ nhớ cache của trình duyệt.

Khi đặt tên cho (các) tệp thư viện, hãy đảm bảo sử dụng tên tệp duy nhất. Ví dụ: đặt tên cho thư viện của bạn dựa trên phiên bản của thư viện. Khi bạn cần nâng cấp lên phiên bản mới của thư viện, chỉ cần tham khảo tên tệp (phiên bản) mới từ các trang có liên quan. Điều này sẽ cho phép bạn lưu trữ các tệp này mà không có ngày hết hạn ngắn hạn.

Có rất nhiều kỹ thuật bộ nhớ đệm khác mà bạn có thể sử dụng để thu thập kích thước tệp thư viện và cải thiện hiệu suất. Tôi muốn giới thiệu "High Performance Web Sites", ISBN: 0596529309. Trong khi tất cả thông tin trong cuốn sách có thể được tìm thấy trực tuyến, cuốn sách thực hiện tốt công việc thu thập thông tin bạn cần ở một nơi và kết hợp các khái niệm khác nhau với nhau (tôi có không quan tâm đến tài chính trong cuốn sách này).

0

Tôi thích jQuery vì nó nhẹ nhưng cực kỳ mạnh mẽ.

Ngoài ra còn có tuyệt vời documentationtutorials để giúp bạn bắt đầu.

1

Câu hỏi này thực sự là một bản sao của this question (tôi nghĩ). Câu trả lời của tôi về câu hỏi đó như sau (và cũng áp dụng ở đây):

Bạn sẽ nhận được một triệu câu trả lời ở đây. Ngắn hạn là: có một số, không phải là một duy nhất. Tất cả chúng đều khác nhau theo một số cách và tương tự ở những người khác, và nói chung, không ai trong số họ là những lựa chọn tồi. Các khuôn khổ chính mà tôi muốn giới thiệu là (theo thứ tự chữ cái để không hiển thị bất kỳ thiên vị):

* Dojo 
* jQuery 
* MooTools 
* Prototype (with Scriptaculous) 
* YUI 
* MochiKit 

Mỗi trong số này có phong cách khác nhau, các cộng đồng khác nhau, và trọng tâm khác nhau. Bạn nên chọn cái nào là chủ yếu là phù hợp với phong cách khung này với của riêng bạn. Hãy dành một chút thời gian với các hướng dẫn và bản trình diễn của từng người và chọn một bản có ý nghĩa nhất đối với bạn.

Là tuyên bố từ chối trách nhiệm, tôi sẽ chỉ ra rằng tôi là nhà phát triển cho MooTools và đã viết một cuốn sách về cách sử dụng nó. Tôi sẽ không nói rằng MooTools tốt hơn bất kỳ khung công tác nào khác; chỉ khác nhau.

2

Tôi đã thử prototypescriptaculous trước tiên nhưng sau đó chuyển sang jquery và không có nhìn lại. Nếu bạn muốn giao diện người dùng tốt đẹp thì YUI là tốt, nhưng jQuery là một trong những đơn giản theo ý kiến ​​của tôi.

0

YUI quá lớn và phức tạp đối với sở thích của tôi. Tôi từng là một fanboi Prototype, nhưng nó đã mất đi độ bóng của nó đối với tôi khi tôi sử dụng jQuery trong các dự án mới. Những gì tôi thích về jQuery là mô hình tinh thần nhất quán: tìm một cái gì đó, hành động trên nó.

tôi thích jQuery đủ mà tôi xây dựng một widget Dashboard cho truy cập offline vào các tài liệu: jQuery Reference Widget

0

jQuery là lựa chọn tốt nhất của bạn nếu bạn đang làm cải tiến nhỏ, vì đó là khung được sử dụng rộng rãi nhất, và bạn sẽ nhận được nhiều phản hồi từ những người dùng khác. Tuy nhiên, tôi không phải là người dùng jQuery vì tôi đã phát triển RIAs bằng cách sử dụng Ext. Do đó, tôi sử dụng Ext-core (một tập con của Ext) vì khung công tác có thiết kế OO tốt hơn, và nó cung cấp chức năng cơ bản giống như jQuery (xử lý sự kiện, thao tác DOM, Ajax).

http://www.extjs.com/products/core/

Tôi chưa bao giờ sử dụng Prototype vì họ tăng thêm Object.prototype gây lỗi trong mã của chúng tôi.

Các vấn đề liên quan