Tôi muốn có thể di chuyển xung quanh (trên nền màu xám, bằng cách kéo và thả) dạng thức được cung cấp bởi Bootstrap 2. Bất kỳ ai có thể cho tôi biết cách thực hành tốt nhất để đạt được điều này là gì?Twitter Phương thức khởi động của Twitter: Cách kéo và thả?
Trả lời
Trình khởi động không đi kèm với bất kỳ chức năng kéo và thả theo mặc định, nhưng bạn có thể thêm một chút jQuery UI gia vị vào hỗn hợp để có được hiệu ứng bạn đang tìm kiếm. Ví dụ: sử dụng tương tác draggable
từ khung công tác, bạn có thể nhắm mục tiêu ID phương thức của mình để cho phép nó được kéo xung quanh phông nền phương thức.
Hãy thử điều này:
JS
$("#myModal").draggable({
handle: ".modal-header"
});
Cập nhật: bootstrap3 demo
Dù kéo tùy chọn bạn đi, bạn có thể muốn tắt *-transition
thuộc tính cho .modal.fade
trong file CSS bootstrap, hoặc ít nhất là viết một số JS tạm thời vô hiệu hóa chúng trong thời gian kéo. Nếu không, phương thức sẽ không kéo chính xác như bạn mong đợi.
vấn đề này được thảo luận và giải quyết tại http://stackoverflow.com/questions/15881245/draggable-js-bootstrap-modal-performance-issues – bbodenmiller
Giao diện người dùng jquery lớn và có thể xung đột với trình khởi động.
Một cách khác là DragDrop.js: http://kbjr.github.io/DragDrop/index.html
DragDrop.bind($('#myModal')[0], {
anchor: $('#myModal .modal-header')
});
Bạn vẫn phải đối phó với các chuyển động, như @ user535673 gợi ý. Tôi chỉ cần loại bỏ các lớp mờ dần từ hộp thoại của tôi.
Bạn có thể sử dụng một tập lệnh nhỏ như thế này.
đơn giản hóa từ Draggable without jQuery UI
(function ($) {
$.fn.drags = function (opt) {
opt = $.extend({
handle: "",
cursor: "move"
}, opt);
var $selected = this;
var $elements = (opt.handle === "") ? this : this.find(opt.handle);
$elements.css('cursor', opt.cursor).on("mousedown", function (e) {
var pos_y = $selected.offset().top - e.pageY,
pos_x = $selected.offset().left - e.pageX;
$(document).on("mousemove", function (e) {
$selected.offset({
top: e.pageY + pos_y,
left: e.pageX + pos_x
});
}).on("mouseup", function() {
$(this).off("mousemove"); // Unbind events from document
});
e.preventDefault(); // disable selection
});
return this;
};
})(jQuery);
dụ: $ ("# someDlg") modal() kéo ({xử lý: "modal-header"})..;
Mã của bạn đã lỗi thời. Đã thử mã của bạn và nó hoạt động, nhưng kéo là lỗi. Đã sửa lỗi bằng cách lấy mã từ liên kết ở trên. Vui lòng cập nhật mã của bạn, dựa trên mã từ liên kết. –
- 1. Kéo n Thả cho Twitter bootstrap 2.0?
- 2. Twitter Bootstrap 2.1 - Phương thức không hoạt động đúng cách
- 3. Twitter Bootstrap thả xuống không hoạt động
- 4. Twitter Bootstrap: Cách đóng hộp thoại phương thức?
- 5. Trường nhập vào trình đơn thả xuống Twitter không được làm việc với phương thức focus()
- 6. Khung Khởi động Twitter và Khung công tác Zend
- 7. Nhận giá trị của nút radio khởi động twitter. JQuery
- 8. Cách tạo mũi tên thả xuống từ Bootstrap của Twitter?
- 9. Trình đơn thả xuống Twitter Bootstrap không hoạt động
- 10. thêm hộp kiểm trong trình đơn thả xuống khởi động twitter
- 11. Thêm một nút thả xuống vào phần khởi động Twitter bootstrap
- 12. Twitter Lưới khởi động không hoạt động như mong đợi
- 13. Twitter Bootstrap phương thức chặn trường nhập văn bản
- 14. Các url bên ngoài kiểu khởi động của Twitter không hoạt động
- 15. Nút radio khởi động Twitter không hoạt động
- 16. Trình đơn thả xuống với Twitter Bootstrap
- 17. Áp dụng kiểu khởi động Twitter Bootstrap cho CodeMirror?
- 18. Trình đơn thả xuống Twitter Bootstrap
- 19. Chaining Twitter Bootstrap phương thức ('ẩn') với độ trễ
- 20. alignment cho twitter bootstrap thả xuống menu
- 21. Các trường mẫu khởi động Twitter quá nhỏ
- 22. Nơi tìm tệp khởi động twitter ít hơn?
- 23. Làm thế nào tôi có thể quản lý tốt nhất nhiều hộp thoại phương thức khởi động twitter
- 24. Biểu mẫu Khởi động Twitter: Tạo cột nhãn rộng hơn
- 25. Cách tạo cửa sổ phương thức với mẫu Twig và Twitter-Bootstrap
- 26. Chỉ nhận phương tiện của người dùng (ảnh) - Twitter API
- 27. Bộ lọc dòng khởi động Twitter/Hộp tìm kiếm
- 28. Twitter Bootstrap Phương thức tải & biến mất nhanh chóng
- 29. Twitter Bootstrap phương thức - tải nội dung "từ xa"
- 30. Twitter Bootstrap 2 phương thức dưới dạng các hộp thoại
Sau khi đặt '.modal-header {cursor: move}', nó hoạt động như một nét duyên dáng. – DontVoteMeDown
Tôi không thể thấy điều này làm việc trên phiên bản bootstrap cuối cùng, 3.3.5. Có lời khuyên nào không? Đã thay đổi Jquery thành 1.11.0, nhưng không may mắn. Cảm ơn. – Khrys
Xin chào @Khrys, đây là bản trình diễn được cập nhật với tiêu đề phương thức có thể kéo, http://output.jsbin.com/vafulubaju. Câu trả lời này khá cũ nên tôi đoán một số liên kết JS trong bản demo bị hỏng). –