2012-04-20 31 views
15

Làm cách nào để vô hiệu hóa việc cuộn trong Chế độ xem Chương trình (chế độ tuần, ngày) bằng trình cắm thêm FullCalendar jQuery? Trong chế độ tháng mọi thứ đều ổn, nhưng khi tôi chuyển sang chế độ Tuần/Ngày, có một thanh cuộn bên cạnh thanh cuộn trang chính của tôi.jQuery FullCalendar: Vô hiệu hóa cuộn trong Chế độ xem Chương trình làm việc?

+0

Trong tìm kiếm thông qua các tài liệu, tôi không thấy bất cứ cách nào để vô hiệu hóa di chuyển trong một cái nhìn nhất định. Có thể cung cấp ví dụ về mã của bạn để xem liệu có cách nào để ngăn chặn điều này trong HTML/CSS của bạn hay không. – magzalez

+0

Tôi chỉ thấy rằng khi tôi sử dụng basicWeek và basicDay thay vì agendaWeek và agendaDay không có thanh cuộn, vì vậy tôi đoán thanh cuộn là một 'tính năng' cho chương trình làm việcWeek en agendaDay Views. – cooxie

+1

bạn không thể mở lại mà không cần hack tệp js. Chiều cao của lịch được thiết lập là tỷ lệ thuận với chiều rộng và chiều rộng được thiết lập dựa trên số lượng chiều rộng div có sẵn. Tỷ lệ thiết lập chiều cao và làm cho mọi thứ khác ẩn và cuộn trong chu vi. Tôi không chắc chắn nơi nó được thiết lập trong js nhưng đó là nơi nó sẽ phải được thay đổi. Ước gì tôi có thể giúp đỡ nhiều hơn! –

Trả lời

20

Đây là những gì tôi đã làm trong trường hợp của mình. Mục đích là để tự động thay đổi chiều cao, vì vậy tôi sử dụng sự kiện viewDisplay theo cách đó:

$('#calendar').fullCalendar({ 
    viewDisplay: function (view) { 
     var h; 
     if (view.name == "month") { 
      h = NaN; 
     } 
     else { 
      h = 2500; // high enough to avoid scrollbars 
     } 

     $('#calendar').fullCalendar('option', 'contentHeight', h); 
    } 
}); 
+1

đây là giải pháp tốt nhất – TUNER88

+0

['viewDisplay'] (http://arshaw.com/fullcalendar/docs/removed/viewDisplay/) đã không được chấp nhận –

+2

hiện tại của nó viewRender - http: // arshaw.com/fullcalendar/docs2/display/viewRender/ –

3

chắc

$('#calendar').fullCalendar({ 
    height: 999999999 
}); 

Nếu lịch của bạn có một thanh cuộn khi bạn không muốn nó sau đó bạn có 3 lựa chọn:

  1. làm cho nó đủ lớn mà nó sẽ không có một cuộn giấy thanh
  2. thu nhỏ nội dung sao cho vừa với ranh giới của bạn
  3. xóa thanh cuộn và mất quyền truy cập vào thông tin không được hiển thị

Bạn cần cụ thể hơn "Tôi không thích thanh cuộn"

+1

Cảm ơn, thuộc tính chiều cao thực sự loại bỏ thanh cuộn trong agendaDay và agendaWeek, nhưng bây giờ chế độ xem tháng bị cắt và trông rất đáng sợ. – cooxie

0

Dưới đây là một phiên bản cập nhật và rút gọn của @Deulis câu trả lời:

$("#calendar").fullCalendar({ 
    viewRender: function(view){ 
    $("#calendar").fullCalendar("option", "contentHeight", (view.name === "month")? NaN : 9999); 
    } 
}); 

Như @Pierre de LESPINAY và @ Jens-André Koch đã đề cập, viewDisplay được khắc phục trong fullcalendar v2.0. Thay vào đó, chúng tôi phải sử dụng viewRender.

+1

Ngắn hơn: 'viewRender: function (view) {$ ('# calendar'). FullCalendar ('option', 'contentHeight', (view.name === 'month')? NaN: 99999); } ':-) – Ben

+0

@Ben Cảm ơn, bạn đã đúng :-) Tôi đã chỉnh sửa câu trả lời – Alexxus

16

Bắt đầu từ FullCalendar 2.1.0-beta1, bạn có thể đặt tùy chọn { height: 'auto' } để tắt thanh cuộn trong chế độ xem.

Mặc dù mục nhập thay đổi cho chức năng mới này có thể được đọc là "Để tắt thanh cuộn trong chế độ xem theo tháng", nó thực sự hoạt động cho tất cả các chế độ xem.

Trong chế độ xem theo tháng, khi chiều cao của lịch bị tràn do quá nhiều sự kiện, thanh cuộn dọc sẽ xuất hiện. Để tắt hành vi này, hãy đặt tùy chọn độ cao thành 'tự động'. - from v2.1.0-beta1 changelog

+0

làm việc như một nét duyên dáng – workdreamer

+1

Nếu tôi đặt chiều cao thành tự động trong FullCalendar 3.5.1, chế độ xem tháng là hoàn hảo, nhưng chiều cao của chương trình bị cắt và thanh cuộn dọc xuất hiện. – devuxer

3

chỉ cần sử dụng:

$('#calendar').fullCalendar({ 
    height: "auto" 
}); 
+0

Đã được bao gồm trong câu trả lời ở trên (http://stackoverflow.com/a/25440372/219324). –

Các vấn đề liên quan