Thêm javascripts bên ngoài


20

Có thể thêm javascripts bên ngoài trực tiếp vào tệp .info của một chủ đề không?
ví dụ: tập lệnh [] = http://cdn.jquerytools.org/1.2.6/jquery.tools.min.js


Bạn chỉ đang tìm cách thêm phiên bản CDN của Công cụ jQuery vào chủ đề của mình hay bạn đang hỏi rõ ràng liệu có thể được thực hiện từ tệp .info của một chủ đề không?
mpdon Arena

Rõ ràng là thêm javascript bên ngoài vào tệp .info
JurgenR

Vì vậy, bạn muốn thêm nó vào tệp .info và bạn đã chấp nhận một câu trả lời hoàn toàn không nói về tệp .info và hiển thị phương thức drupal_add_js?
mpdon Arena

Có nếu nó không hoạt động trong tệp thông tin Tôi rất vui với giải pháp tốt nhất có thể.
JurgenR

Câu trả lời:


24

Trong tệp template.php của chủ đề của bạn, sử dụng drupal_add_js () cho phương thức tiền xử lý trang (hoặc một tiền xử lý tương đương).

function hook_preprocess_page(&$vars) {
  drupal_add_js('http://cdn.jquerytools.org/1.2.6/jquery.tools.min.js', 'external');
}

Tôi gặp lỗi javascript khi sử dụng chức năng này, khi tôi đặt đoạn script bên trong (footer) html.tpl.php thì nó đang hoạt động.
JurgenR

Lỗi gì? Drupal có xuất ra đánh dấu tập lệnh tìm chính xác khi sử dụng chức năng này nếu bạn kiểm tra mã nguồn không?
drmonkeyninja

Thêm mảng tùy chọn cố định nó. Đoán nó là một vấn đề với trọng lượng. drupal_add_js (' cdn.jquerytools.org/1.2.6/jquery.tools.min.js ', mảng ('type' => 'bên ngoài', 'scope' => 'tiêu đề', 'weight' => 10)) ; Thnx!
JurgenR

@Jurgen drupal_add_js()cũng chấp nhận một chuỗi làm tham số thứ hai; trong trường hợp đó, nó được coi là chỉ mục "loại" được sử dụng từ $optionsmảng. Nếu bạn cần đặt các tùy chọn khác, thì bạn phải sử dụng một mảng.
kiamlaluno

@drmonkeyninja Làm thế nào để thêm JS vào bất kỳ mô-đun nào .. ??
Nishant

2

Phương pháp thêm javascript phụ thuộc vào những gì bạn đang thêm javascript. Có nhiều cách khác nhau để thêm js.

  • Bằng cách xác định trong tệp theme.info.

  • Thêm nó nội tuyến.

  • Thêm một tập tin js bên ngoài.

Bạn có thể thêm tệp thông tin js với dòng mã đơn giản này

scripts[] = js/myscript.js

Hoặc bạn có thể sử dụng chức năng php được cung cấp bởi drupal drupal_add_js

Các chức năng này cho phép bạn dễ dàng thêm tệp JavaScript hoặc giúp thiết lập mã nội tuyến cho bất kỳ trang nào trong chủ đề của bạn và phải mất 5 tham số ( bạn thấy nó trong tham chiếu api ).

Có một bài viết chi tiết về điều này ở đây.


2
bạn không thể xác định một JS bên ngoài trong một tệp thông tin, một cách tự nhiên là drupal.stackexchange.com/a/196874/12010
batigolix
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.