Tôi đang sử dụng JQTransform để tạo kiểu cho tất cả các phần tử biểu mẫu. Có thể vô hiệu hóa kiểu dáng trên một phần tử cụ thể, để lại tất cả các kiểu khác theo kiểu JQTransform không?JQTransform - Loại trừ yếu tố tạo kiểu?
Trả lời
Tôi đã thêm if($input.hasClass('ignore') == true) { return; }
vào dòng 99 của plugin để bỏ qua bất kỳ trường văn bản nào có class = ignore. Có lẽ điều này sẽ giúp bạn.
Tôi xác nhận rằng giải pháp của mattbee đã làm việc cho tôi bằng cách trả lời từ thành viên đăng câu hỏi. Theo hướng dẫn, tôi dán mã trên đường 99, trên dòng sau:
if($input.hasClass('jqtranformdone') || !$input.is('input')) {return;}
Để bất cứ ai mà nó không phải là rõ ràng để, dán mã TRÊN dòng 99 chứ không phải là THAY THẾ dòng 99 như sau :
/*Custom code: Regarding class for elements exceptional to transformation.*/
/*Custom code: http://stackoverflow.com/questions/3727517/jqtransform-exclude-an-element-from-styling*/
if($input.hasClass('ignore') == true) { return; }
if($input.hasClass('jqtranformdone') || !$input.is('input')) {return;}
Tôi không thấy tùy chọn nhận xét về câu trả lời của mattbee vì vậy tôi đã gửi câu trả lời dưới dạng câu trả lời.
EDIT: Mã trên sẽ nhắc jqTransform bỏ qua/loại bỏ/bỏ qua/tránh các yếu tố đầu vào. Trong trường hợp của tôi, tôi đã sử dụng nó để loại trừ type = "text" và type = "image". Tuy nhiên, áp dụng lớp .ignore vào phần tử textarea của tôi thực sự đã loại trừ phép biến đổi không mong muốn nhưng vì một số lý do nào đó đã loại trừ việc chuyển đổi các phần tử đã chọn của tôi. Xin lưu ý rằng việc chỉnh sửa jquery.jqtransfrom.js cho vùng văn bản được thực hiện trong hàm văn bản bắt đầu từ dòng 201 của tài liệu chưa được chỉnh sửa ban đầu chứ không phải hàm cho trường văn bản bắt đầu tại dòng 95 trong khối mã ở trên.
Dưới đây là một ví dụ về những gì tôi đã cố gắng (đặt TRÊN dòng 207):
if($textarea.hasClass('ignore') == true) { return; }
Nói cách khác, nó làm việc mà còn loại trừ việc chuyển đổi hộp chọn của tôi mà không phải là ý định của tôi.
Sau khi tìm kiếm các giải pháp tôi đã xem qua các bài viết trên blog sau: http://www.deliciouscoding.com/post.cfm?entry=use-jqtransform-and-tinymce-together
Về cơ bản, các bảng mà jqTransform tạo ra để thay thế các yếu tố textarea được thay thế bằng một textarea trở lên chỉ cần đặt, nó Undoes việc chuyển đổi:
<!--Undo textarea transformation.-->
<!--Source: http://www.deliciouscoding.com/post.cfm?entry=use-jqtransform-and-tinymce-together.-->
<script language="javascript">
jQuery(function(){
jQuery("form.transform table").replaceWith('<textarea></textarea>');
});
</script>
Đối với những người mới sử dụng jQuery, mã trên phải được đặt cùng với người đứng đầu tài liệu của bạn (ví dụ: <head>
và </head>
).
Hoặc bạn chỉ có thể thêm jqtranformdone lớp đầu vào của bạn :)
có thư viện mới tôi đã tạo ra - csTransPie - dựa trên jqtransform - jqtransform là một thư viện tuyệt vời nhưng nó thực sự có nhiều vấn đề, ngày nay css3 giải quyết rất nhiều thiếu sót và tôi thích ý tưởng về điều khiển là điều khiển bình thường và tìm kiếm giống nhau ở mọi trình duyệt
https://github.com/pkoretic/csTransPie
đó là một công việc đang tiến nhưng ngay cả bây giờ nó là tốt hơn so với jqtransform (hơn một nửa số mã lại được viết, nhiều lỗi được giải quyết, làm sạch css ...), bạn phải thừa nhận nó ...
Chỉ cần sử dụng.transpie lớp trên yếu tố bạn muốn!
Tôi biết đây là một chủ đề rất cũ, nhưng tôi phải nói rằng nó phù hợp hơn nếu bạn thêm lớp phụ vào biểu mẫu bình thường của bạn, và nó sẽ không được chuyển đổi. Đối với văn bản đầu vào và textarea thêm lớp 'jqtranformdone' và nó sẽ được trả lại mà không cần biến đổi. Đối với các hộp kiểm, nút radio và các lựa chọn sử dụng lớp 'jqTransformHidden'.
đây phiên bản của tôi (Phiên bản 1.1 06.08.09) để bỏ qua đầu vào: chỉnh sửa này trong jquery.jqtransform.js trong dòng 497
$('input:submit:not(.hidden), input:reset:not(.hidden), input[type="button"]:not(.hidden)', this).jqTransInputButton();
$('input:text:not(.hidden), input:password:not(.hidden), input[type="email"]:not(.hidden)', this).jqTransInputText();
$('input:checkbox:not(.hidden)', this).jqTransCheckBox();
$('input:radio:not(.hidden)', this).jqTransRadio();
$('textarea:not(.hidden)', this).jqTransTextarea();
$('select:not(.hidden)', this).jqTransSelect()
Sử dụng các lớp jqtransformdone
. Nó được xây dựng trong các plugin.
hoạt động, nhưng phải được viết bằng chữ "T": 'jqTransformdone' – Rocco
Bạn chỉ cần thêm lớp "jqtransformdone" vào phần tử, bạn muốn bỏ qua kiểu. Hy vọng, nó sẽ giúp người khác.
Điều này đã được đề cập trong một số câu trả lời khác. Vui lòng kiểm tra xem câu trả lời bạn muốn cung cấp chưa có trước khi trả lời hay không. – Ren
- 1. Loại trừ yếu tố đầu tiên trong CSS
- 2. Chọn nodeValue nhưng loại trừ yếu tố con
- 3. ngăn chặn di động jquery từ yếu tố tạo kiểu
- 4. Tạo các yếu tố HTML5
- 5. javascript - loại bỏ yếu tố
- 6. MOXY JAXB: làm thế nào để loại trừ các yếu tố từ marshalling
- 7. Tìm 'loại' của yếu tố đầu vào
- 8. Cách chọn yếu tố nhưng loại trừ các phần tử đầu tiên và cuối cùng
- 9. Loại trừ các yếu tố nhất định khỏi lựa chọn trong XPath
- 10. Mongodb - bao gồm hoặc loại trừ các yếu tố nhất định với trình điều khiển C#
- 11. jquery loại bỏ plugin từ yếu tố
- 12. Trang HTML có (hầu hết) tất cả các yếu tố, để tạo kiểu
- 13. Mảng loại có đầy đủ yếu tố loại
- 14. tìm mảng yếu tố
- 15. Tạo một HTML yếu tố trượt dọc
- 16. hoán vị Tạo các yếu tố NSArray
- 17. động tạo file yếu tố đầu vào
- 18. CSS & Kiểu ghi đè trên các yếu tố lồng nhau
- 19. Yếu tố con kiểu khi di chuột qua bố mẹ
- 20. CSS: Tạo kiểu nội dung của yếu tố trước khi giả trên một danh sách
- 21. jqTransform Update Chọn Tùy chọn
- 22. CSS Áp dụng đường viền cho tất cả các yếu tố đầu vào, trừ hộp kiểm
- 23. yếu tố jquery fade không hiển thị các yếu tố theo kiểu 'mức độ hiển thị: ẩn'
- 24. Ẩn tất cả các yếu tố ngoại trừ một div để xem in
- 25. Tạo một yếu tố có thể tự xóa nó?
- 26. Floating div yếu tố
- 27. Kết hợp hai vectơ yếu tố-by-yếu tố
- 28. Chọn yếu tố cụ thể trước khi yếu tố khác
- 29. python lxml thêm yếu tố sau yếu tố khác
- 30. Loại bỏ các yếu tố chung giữa hai danh sách
Cảm ơn Mattbee. Một bổ sung tuyệt vời! :) – iltdev