2013-08-15 42 views

Trả lời

6

Tôi đã tìm kiếm bất kỳ giải pháp khả thi nào, nhưng cho đến nay, tôi không tìm thấy gì trong tài liệu chính thức. Những gì tôi tìm thấy trong tệp phát triển tinymce.js (phiên bản không nén) là chú giải công cụ được mã hóa cứng và được đặt để bao gồm mọi lúc.

tôi đã cố gắng điều khác nhau để vô hiệu hóa các tooltip, bởi cho đến nay, cách dễ nhất và an toàn nhất tôi đã đưa ra là bằng cách sử dụng CSS, bao gồm chút mã này trong file css chính để ẩn tooltip mãi mãi:

.mce-widget.mce-tooltip { 
    display: none !important; 
} 

Giải pháp này tránh sử dụng Javascript/jQuery và cũng tránh được việc sửa đổi tệp nguồn tinymce.js.

+0

tôi đang tìm kiếm một giải pháp năng động hơn trên TinyMCE 4.x để có thể cho phép/vô hiệu hóa tooltips. Giải pháp của bạn sẽ ẩn chúng vĩnh viễn. Nó hoạt động hoàn hảo. Vì vậy, tôi đã cố gắng tạo một phiên bản JQuery của nó. Chuyển đổi ví dụ của bạn để JQuery loại bỏ tất cả các yếu tố trong khi '! Quan trọng' đã không được sử dụng (có lẽ không tương thích với JQuery). Tôi nhìn sâu hơn vào nó. Giải pháp của tôi (trên init của tinymce: $ ('. Mce-widget [aria-label]') mỗi (function() {$ (this) .attr ('aria-label', '');}); – Jonny

0

Tôi đã sử dụng JQuery và tinyMCE 4.x. Giải pháp này cho phép bạn kích hoạt/vô hiệu hóa tooltips bên TinyMCE:

tinymce.init({ 
... 
    init_instance_callback : function() { 
    $("head").append("<style> .mce-tooltip{ display: none; } </style>"); 
    }, 
... 

Nó thay đổi lớp MCE-tooltip sau TinyMCE được khởi tạo (init_instance_callback). Đặt 'display: block;' nếu bạn muốn hiển thị chú giải công cụ lần nữa. Nó không phải là giải pháp đẹp nhất, tôi biết, nhưng nó hoạt động.

0

Bạn có thể truy cập vào dụ nút và thiết lập trạng thái rendered của nó để false:

var controlIds = editor.theme.panel.rootControl.controlIdLookup; 

for (let i in controlIds) { 
    if (controlIds[i].tooltip) { 
     controlIds[i].tooltip().state.set('rendered', false); 
    } 
} 
Các vấn đề liên quan