2017-01-30 23 views
16

Tôi đã đặt scrollIntoView() để làm cho cuộn lưới của tôi hiển thị. Khi tôi thêm lưới mới trong gridContainer vì vậy tôi sử dụng phương pháp này. Đây là công việc tôi có thể kiểm tra từ trình gỡ lỗi. tôi scrollIntoView()Chính xác thì trì hoãn làm gì?

grid.body.dom.scrollIntoView(); 

Nhưng một khi nó đạt được trong chức năng Hoãn nó không scrollIntoView() hoạt động. Ai có thể đề nghị làm thế nào để bỏ qua điều này. Điều gì trì hoãn và làm thế nào để bỏ qua điều này. Ngoài ra tôi đang sử dụng grid.focus() và một lần nữa cùng một điều đang xảy ra. Lưới được đưa vào xem nhưng sau khi đi ra từ trình gỡ lỗi không hiển thị vào xem.

defer: function(fn, millis, scope, args, appendArgs) { 
    fn = Ext.Function.bind(fn, scope, args, appendArgs); 
    if (millis > 0) { 
    return setTimeout(function() { 
     if (Ext.elevateFunction) { 
     Ext.elevateFunction(fn); 
     } else { 
     fn(); 
     } 
    }, millis); 
    } 
    fn(); 
    return 0; 
}, 
+1

'trì hoãn 'về cơ bản giống như' setTimeout'. Tuy nhiên tôi không thực sự rõ ràng về phần còn lại của câu hỏi của bạn. –

+0

@EvanTrimboli Tôi cần làm gì nếu không muốn hết giờ. Tôi đang đưa 'grid.body.dom.scrollIntoView();' vào lưới của tôi sau một thời gian mã này không hoạt động. – David

+2

Không có đủ thông tin, điều gì gây ra cuộc gọi 'trì hoãn '? Tại sao bạn không sử dụng API cuộn? 'grid.body.dom' không phải là điều phù hợp để cuộn. –

Trả lời

3

Cách giải quyết sẽ không được cuộn đến thành phần, nhưng để sử dụng card layout cho vùng chứa trung tâm và hiển thị lưới mới trên thẻ khác.

var centerCt; // reference to your center container 
var centerLayout = centerContainer.getLayout(); 
var newGrid = Ext.create('Ext.grid.Panel', {}); 
centerCt.add(newGrid); 
centerLayout.setActiveItem(newGrid); 

Tôi đã tạo một Sencha Fiddle.

+0

Tôi đang sử dụng vbox và khi tôi chuyển sang thẻ không có lưới thứ hai đang tải. Vâng, hãy để tôi thử điều này bất cứ điều gì bạn viết trong câu trả lời và lấy lại cho bạn trong một thời gian. – David

+0

Điều này sẽ không hoạt động, bởi vì cùng một lúc tôi chỉ hiển thị một lưới ở đây. Tôi cần bảng điều khiển của tôi để có thể cuộn được. – David

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