Web Cơ Bản

Phương thức replace() của đối tượng Location

- Phương thức replace() của đối tượng location được dùng để điều hướng trang hiện tại sang một trang khác.

1) Cú pháp

- Để điều hướng trang hiện tại sang một trang khác, ta truy cập vào phương thức replace() của đối tượng location với cú pháp như sau:

location.replace(newURL)
Tham số Yêu cầu Mô tả
newURL Bắt buộc

newURL là địa chỉ của trang mà bạn muốn điều hướng tới.

newURL có thể là:

  • Một đường dẫn tuyệt đối, ví dụ như:
    http://webcoban.vn/javascript/default.html
  • Một đường dẫn tương đối, ví dụ như:
    ../css/default.html

2) Một số ví dụ

Ví dụ:

<!DOCTYPE html>
<html>
<body>

    <button type="button" onclick="dieu_huong()">Điều hướng sang trang khác</button>

    <script>
        function dieu_huong(){
            location.replace("http://webcoban.vn");
        }
    </script>

</body>
</html>
Xem ví dụ

3) Điểm khác nhau giữa phương thức assign() và replace()

- Cả hai phương thức assign() và replace() đều được dùng để điều hướng trang hiện tại sang một trang khác.

- Tuy nhiên, đối với phương thức assign() thì nó sẽ không xóa trang hiện tại ra khỏi lịch sử truy cập của cửa sổ trình duyệt.

- Ví dụ, nếu dưới đây là quá trình sử dụng trên cửa sổ trình duyệt:

Những trang được truy cập trước đó
Trang hiện tại
Trang mới
điều hướng bằng phương thức assign()

- Thì lịch sử truy cập của cửa sổ trình duyệt đó sẽ là:

Những trang được truy cập trước đó
Trang hiện tại
Trang mới

Với việc điều hướng bằng phương thức assign() thì khi ta nằm ở "trang mới" ta có thể bấm nút "quay lại" trên trình duyệt để quay về "trang hiện tại"

- Còn đối với phương thức replace() thì nó sẽ xóa trang hiện tại ra khỏi lịch sử của cửa sổ trình duyệt.

- Ví dụ, nếu dưới đây là quá trình sử dụng trên cửa sổ trình duyệt:

Những trang được truy cập trước đó
Trang hiện tại
Trang mới
điều hướng bằng phương thức replace()

- Thì lịch sử truy cập của cửa sổ trình duyệt đó sẽ là:

Những trang được truy cập trước đó
Trang mới

Với việc điều hướng bằng phương thức replace() thì khi ta nằm ở "trang mới" ta không thể bấm nút "quay lại" trên trình duyệt để quay về "trang hiện tại" mà nó sẽ quay về trang được truy cập trước "trang hiện tại"