2014-12-15 24 views
8

Tôi đang làm việc trên ứng dụng yêu cầu tôi mô phỏng nút quay lại/tiến trình của trình duyệt (Tôi đã triển khai 2 nút). Tôi có thể đạt được chức năng này bằng cách sử dụng window.history.forward()window.history.back(). Chức năng hoạt động như mong muốn. Nhưng tôi có một vấn đề tôi có yêu cầu vô hiệu hóa nút chuyển tiếp khi không có thêm trang nào để duyệt thêm và ngược lại cho nút quay lại.Góc js- Mô phỏng nút quay lại/chuyển tiếp của trình duyệt tắt

Tôi đã thử sử dụng cách giải quyết sau, nhưng không có gì hiệu quả.

if(!window.history.next){ 
    $scope.abcService.enableForwardButton = false; 
} 

Điều kiện này if không bao giờ hài lòng, ngay cả khi tôi không có trang nào để duyệt thêm.

var index = window.history.length; 
if(window.history[index] != window.location) 
{ 
    $scope.abcService.enableForwardButton = true; 
} 

Mọi thông tin đầu vào sẽ hữu ích. Lưu ý: việc vô hiệu hóa các nút là bắt buộc đối với ứng dụng

+1

Bạn nên sử dụng dịch vụ $ cửa sổ, không cửa sổ trực tiếp. – Fals

+1

chuyển tiếp phải luôn bị tắt, trừ khi bạn đã nhấp lại trước khi nhấp vào bất kỳ thứ gì khác. vì vậy, vô hiệu hóa chuyển tiếp trên mỗi nav, và chỉ mở khóa sau khi một lệnh back trên một setTimeout ngắn. – dandavis

+0

Tôi sẽ thử $ cửa sổ – Amit

Trả lời

-1

Tôi tin rằng điều này sẽ phù hợp với bạn.

if(typeof window.history.forward!=='function'){ 
    $scope.abcService.enableForwardButton = false; 
} 

Khi bạn có thể điều hướng về phía trước sau đó typeof window.history.forward là 'chức năng' khi bạn không có thì nó là 'undefined'

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