2013-04-13 25 views
9

Có thể thực hiện một nút để gọi một hàm có thể 'làm cho' độngkhông? Tôi không thể có được nó để làm việc.Dynamic google-code-prettify không hoạt động

Sau khi tải trang, <code> ban đầu đã được định dạng lại (?), Nhưng khi tôi thay đổi và gọi hàm prettyPrint() sau đó, nó không hoạt động nữa.

Ví dụ: http://jsfiddle.net/uwBjD/2/

Edit: Xin lỗi, tôi đã sử dụng một prettify.js địa phương. Cập nhật nó, vẫn gặp phải lỗi tương tự.

+0

có nhìn vào giao diện điều khiển? Nó khá rõ ràng cho bạn biết, 'prettyPrint không được định nghĩa' cho tôi. Điều này có thể liên quan đến thực tế là một trong các tập lệnh của bạn, [prettify.js] (http://apps-02.rwmanila.com/Scripts/prettify.js), là 404. – Xymostech

Trả lời

18

Dường như sau khi mã được làm rõ, một lớp bổ sung được thêm vào là prettyprinted. Bất cứ điều gì với lớp học của prettyprinted không được tái xác định. Bạn cần phải loại bỏ lớp đó trước khi nhớ lại những chức năng: bạn

$('input[type=button]').click(function() { 
    $("#jsExample").text(" var user = 'private'; //Do NOT store your API Key on a script.") 
     .parent().removeClass("prettyprinted"); 

    prettyPrint(); 
}); 

http://jsfiddle.net/uwBjD/3/

+2

https://code.google.com/p/google-code-prettify/source/browse/trunk/js-modules/prettify.js#905 –

+3

Tuyệt vời! Tôi đã chiến đấu chống lại điều này trong một giờ;) – MrUpsidown

+0

@James, Google có một cách xử lý chậm chạp với mọi thứ. – Pacerier