2012-08-08 38 views
7

Tôi đang sử dụng thanh cuộn Jquery đẹp cho div, nhưng khi nội dung của div tăng tự động thì không hiển thị thanh cuộn. Thanh cuộn mặc định của Windows hoạt động tốt nếu tôi xóa cuộn đẹp. Có ai giúp tôi giải quyết vấn đề này không?Jquery Đẹp cuộn không hoạt động

Html

<div id="div-to-scroll"> 
</div> 

Script

$(document).ready(function(e) { 
    var nice = $("#div-to-scroll").getNiceScroll(); 
    $("#div-to-scroll").niceScroll(); 
    $("#div-to-scroll").getNiceScroll().resize(); 
}); 

đây là mẫu mã của tôi.

+0

Bạn có thể hiển thị giải pháp của mình không? – stetro

+0

tôi không có giải pháp. – gaurang171

+0

sry ;-) tôi nghĩ trạng thái mã hiện tại :-) – stetro

Trả lời

16

Cuối cùng làm việc này cho tôi.

$("#div-to-scroll").scroll(function(){ 
    $("#div-to-scroll").getNiceScroll().resize(); 
}); 
1

Một số lý do có thể có:
1- Có thể bạn quên chỉ định chiều cao div của mình. sửa chiều cao div của bạn.
2 - cũng nếu div của bạn là nổi chiều rộng cố định chiều rộng quá.
remmember rằng STYLE DIV của bạn nên có: overflow-y: hidden;
CẬP NHẬT
hãy thử sử dụng thay đổi kích thước() chức năng mỗi khi bạn di chuyển xuống:

$("div-to-scroll").slideDown(function(){ 
    $("div-to-scroll").getNiceScroll().resize(); 
}); 
+0

Có tất cả những gì tôi đã làm. điều là khi tải cửa sổ nó hoạt động nhưng sau khi tôi bắt đầu chắp thêm nội dung của nó không hoạt động. – gaurang171

+0

@ keyuratcodebins.com điều gì xảy ra sau khi bạn thêm nội dung? nó ngừng cuộn hoặc nó hiển thị tất cả nội dung cùng một lúc? – osyan

+0

nó ngừng di chuyển – gaurang171

9

cho tôi hoạt động giống với

$("#div-to-scroll").mouseover(function() { 
    $("#div-to-scroll").getNiceScroll().resize(); 
}); 
+0

Từ 'mouseover' đến từ đâu? – Blazemonger

1
$("html").mouseover(function() { 
    $("html").getNiceScroll().resize(); 
}); 

Để có được thanh cuộn trên cơ thể đầy đủ

+0

Dòng thứ 2 có thêm '#'. – Raptor

+1

@Raptor Có, chỉ cần làm theo cú pháp. (Selector là không quan trọng ở đây) –

2

UPDATE: chức năng mới tìm thấy!

var setScroll = function(i) { 
     if($(i).length>0) 
     $(i).niceScroll().updateScrollBar(); 
} 

Gọi chức năng này để cập nhật niceScroll

setScroll(".classWithNiceScroll"); 
1

Làm điều này:

// Scroll X Axis 
$("#mydiv").getNiceScroll()[0].doScrollLeft(x, duration); 
// Scroll Y Axis - 
$("#mydiv").getNiceScroll()[0].doScrollTop(y, duration); 

hay:

// Scroll X Axis 
$("#mydiv").getNiceScroll(0).doScrollLeft(x, duration); 
// Scroll Y Axis - 
$("#mydiv").getNiceScroll(0).doScrollTop(y, duration); 

Note [0] sau getNiceScroll()

+0

Điều này làm việc cho tôi. – Banago

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