2011-11-19 33 views
6

Tôi đang xem mã nguồn SO để xem cách chúng đang thực hiện div trên thanh bên phải thay đổi so với vị trí cố định.Stack Overflow bao gồm các tệp Javascript như thế nào?

tôi thấy rằng thư viện SO JS là khá nhiều tất cả đưa vào trang với mã này dưới đây ...

Câu hỏi của tôi là như thế nào là mã bao gồm như thế này, là một cái gì đó này như RequireJS hoặc labJS javascript mã chỉ tải các tập tin khi chúng cần thiết hoặc một cái gì đó như thế?

<script type="text/javascript"> 
StackExchange.using.setCacheBreakers({ 
    "js/prettify-full.js": "0324556b7bf7", 
    "js/moderator.js": "a38ca3c6143d", 
    "js/full-anon.js": "8fcefa158ad3", 
    "js/full.js": "a168b3deac0f", 
    "js/wmd.js": "688233b2af68", 
    "js/third-party/jquery.autocomplete.min.js": "e5f01e97f7c3", 
    "js/mobile.js": "97644ef9b7d4", 
    "js/help.js": "7f83495f785a", 
    "js/tageditor.js": "75954ba7b6f1", 
    "js/tageditornew.js": "9d9998359a54", 
    "js/inline-tag-editing.js": "364e12111b4b", 
    "js/mathjax-editing.js": "a47e02eb0282", 
    "js/revisions.js": "63c88065da1f" 
}); 
</script> 
+9

Có vẻ câu hỏi hợp lệ với tôi – Sarfraz

+0

Bạn đã cố gắng phân tích mã nguồn chưa? http://jsbeautifier.org có thể được sử dụng để rút ngắn mã. Mã nguồn có sẵn tại http://cdn.sstatic.net/js/stub.js?v=e922af98260a. ** De-minified code: http://pastebin.com/W5ynGRNS** –

+0

@Rob W Có đoạn code ở trên là phiên bản Beautified, tôi vẫn đang học Javascript nên tôi có thể làm theo phần nào đó nhưng tôi không biết đủ để nhận ra những gì hoặc làm thế nào nó được bao gồm các tập tin – JasonDavis

Trả lời

8

Câu hỏi của tôi là làm thế nào là mã bao gồm như thế này, là một cái gì đó này như RequireJS hoặc labJS mã javascript tải các tập tin chỉ khi họ là cần thiết hoặc một cái gì đó như thế?

Có, nhưng không một trong hai số – đó là giải pháp rất nhỏ. Đoạn trích bạn đã đăng chỉ cho phép JavaScript biết bộ đệm cache nào sử dụng nếu bao gồm tệp; nó không thực sự bao gồm chúng. Điều đó chỉ xảy ra khi tệp thực sự cần thiết.

Tôi đã viết một blog post cung cấp một số thông tin chi tiết về những gì đang xảy ra ở đó.

+0

cảm ơn bạn, tôi sẽ cung cấp cho nó một đọc – JasonDavis

+0

@balpha tuyệt vời! tôi muốn sử dụng chức năng "loadScript", có phải bản quyền không? – shadesco

+0

@shadesco: Nếu có bất cứ điều gì, nó dưới cùng một giấy phép như jQuery (MIT/GPL theo lựa chọn của bạn), vì nó đến từ đâu. – balpha

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