2008-11-17 22 views
5

Tôi đang tạo một plugin Joomla và muốn tải một loạt các hình ảnh sau khi trang đã tải. Để làm điều đó, tôi hiện đang sử dụng mootools.js để gọi URL myserver, nhận phản hồi JSON và phân tích cú pháp phản hồi thành các biến javascript đại diện cho từng url hình ảnh. Nó hoạt động rất tốt, nhưng mootools.js được đặt tên thích hợp vì nó là một kẻ thô lỗ thực sự trong bộ phận kích thước.Kịch bản JSON/ajax trọng lượng nhẹ, tốt nhất là gì?

Có một tập lệnh nhẹ có thể thực hiện cuộc gọi ajax và phân tích cú pháp đối tượng JSON không? Càng nhỏ càng tốt.

Trả lời

2

Có một vài khung javascript ngoài đó ngoài Mootools có thể thực hiện những gì bạn đang tìm kiếm. Tôi khuyên bạn nên xem Jquery hoặc Prototype. Họ rất giống với Mootools và các phiên bản mini-fied có thể cung cấp các giải pháp nhẹ bạn đang tìm kiếm:

http://jquery.com/

http://www.prototypejs.org/

0

Hai gợi ý:

  1. Tìm một thư viện phá vỡ chức năng bạn cần vào các thành phần tương đối nhỏ. Sau đó tải xuống chỉ các thành phần bạn cần. YUI được chia nhỏ một cách độc đáo, nhưng ngay cả những tệp đó cũng có thể lớn hơn mức cần thiết. Một dự án nhỏ hơn dựa trên YUI là Fork. Tìm thư viện này tại http://forkjavascript.org
  2. Tìm chức năng bạn cần ở một trong các thư viện nguồn mở và cấu trúc lại nó thành phiên bản nhỏ hơn đáng kể của riêng bạn.
0

Tôi không biết phiên bản cụ thể của MooTools bạn đang sử dụng, nhưng nó không phải lớn nếu bạn điều chỉnh riêng cho nhu cầu của mình. MooTools cung cấp advanced download page cho phép bạn tạo phiên bản được biên tập, tùy chỉnh của thư viện trong một tệp. Hãy dùng thử và xem nó có phù hợp với nhu cầu của bạn hay không. Nếu có, bạn sẽ không phải đi và tìm hiểu nguyên mẫu/jquery/etc.

Chỉnh sửa: Tôi vừa thử tải xuống gói Request.JSON của MooTools với tất cả các phụ thuộc. Với tùy chọn nén YUI, kích thước tệp đã xuất hiện thành 33,8KB.

0

Nếu trọng lượng nhẹ bạn muốn, tôi có thể đề xuất Net.js.

http://xkr.us/code/javascript/Net/

Tuy nhiên, nó không hỗ trợ phân tích cú pháp của JSON, nhưng điều đó chỉ đơn giản là một dòng mã, nhận được responseText và gọi eval vào nó:

var json = eval ('(' + xhr.responseText + ')');

Nhược điểm:

Hết giờ không thể định cấu hình được. Tuy nhiên, dễ dàng sửa đổi trực tiếp trong nguồn.

Không hỗ trợ cho nhóm yêu cầu có trình xử lý hoàn tất thông thường. Mỗi yêu cầu là cá nhân.

3

Tôi vừa tìm thấy trình phân tích cú pháp JSON, json2.js, tại json.org làm giảm xuống còn khoảng 3k. Về cơ bản, bạn thực hiện HTTPRequest chuẩn thông qua AJAX và sau đó chuyển văn bản phản hồi tới trình phân tích cú pháp JSON để tạo đối tượng JSON.

Cảm ơn tất cả các câu trả lời và tôi đã theo dõi tất cả các câu trả lời. Tuy nhiên, tôi không thể có được một trong số chúng đủ nhỏ để cạnh tranh với cách tiếp cận này.

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