Nếu các plug-ins được well-behaved, sau đó điều này sẽ làm việc:
<script src="jquery-1.2.2.js"></script>
<script src="thickbox.js"></script>
<script src="jquery-1.7.1.js"></script>
<script src="slideshow.js"></script>
(Rõ ràng là những tên kịch bản được tạo thành.) Here's an example (source) (Tôi sử dụng jQuery 1.4. 2 và jQuery 1.7.1 vì Google không lưu trữ 1.2.2).
Các công trình trên với well-behaved plug-ins vì một well-behaved plug-in không dựa trên toàn cầu $
ở tất cả, nhưng thay vì sử dụng giá trị của jQuery
toàn cầu như khi nó đã được nạp và lấy một tham chiếu đến nó trong một đóng cửa, sau đó sử dụng mà tài liệu tham khảo địa phương trong cả mã các plug-in của, như thế này:
// Example plug-in setup
(function($) {
// ...Plug-in code using `$` here -- note it's a *local* `$`,
// not the global `$`, and not the global `jQuery`...
})(jQuery);
hoặc
(function() {
var $ = jQuery;
// ...Plug-in code using `$` here -- note it's a *local* `$`,
// not the global `$`, and not the global `jQuery`...
})();
Cả hai của những người lấy toàn cầuGiá trịtính đến thời điểm plugin được tải và sau đó sử dụng bí danh cục bộ của chúng trong suốt.
Nếu các plug-in muốn chờ đợi cho sự kiện đã sẵn sàng, nó cũng có thể làm điều này:
jQuery(function($) {
// ...Plug-in code using `$` here -- note it's a *local* `$`,
// not the global `$`, and not the global `jQuery`...
});
... trong đó sử dụng các chức năng jQuery chuyển vào xử lý sẵn sàng.
Bất kỳ trong số ba tính năng này sẽ hoạt động chính xác (với hộp thư đến xem jQuery 1.2.2 và trình chiếu xem jQuery 1.7.1) với thứ tự tải tập lệnh được liệt kê ở trên.
Nhưng "nếu" trong câu mở đầu của tôi là lớn "nếu". Rất nhiều plug-in không được viết để chống đạn theo cách này.
Các bất kể ở trên, tôi sẽ di chuyển ra khỏi bất kỳ plug-in mà đòi hỏi jQuery 1.2.2 để làm việc, và nếu có thể (và đó là gần như luôn càng tốt) tránh được việc phải nạp hai các phiên bản khác nhau của bất kỳ thư viện nào, bao gồm jQuery, trong cùng một trang.
tôi sẽ đề nghị chuyển tất cả mọi thứ lên phiên bản mới nhất. –
bạn có thể cung cấp mã không? –
Đây là bản sao của http://stackoverflow.com/questions/528241/how-do-i-run-different-versions-of-jquery-on-the-same-page?rq=1 – Alkaline