2013-05-03 35 views
8

Làm thế nào tôi có thể, hoặc là có thể, để làm cho nó như vậy khi trang web tải, điều đầu tiên nó cho bạn thấy là một phần của trang, nơi mà các thẻ neo là bạn muốn người đầu tiên nhìn thấy.Làm cách nào để tải trang lên thẻ neo?

Có thể không?

Cảm ơn mọi sự trợ giúp trước.

Trả lời

4

Sử dụng javascript.

Giải pháp 1

Khi tải tài liệu, hãy vào phần "băm" hoặc neo mà bạn muốn

<script type="text/javascript"> 
function load() 
{ 
window.location.hash="mylocation"; 
} 
</script> 

Giải pháp 2

Trong tiêu đề:

<script type="text/javascript" language="javascript"> 
    function moveWindow(){window.location.hash="mylocation";} 
</script> 

Mở thẻ nội dung:

<body onload="moveWindow()"> 

Và neo của bạn:

<a name="mylocation"></a>

+0

Cảm ơn bạn rất nhiều! Tôi cần một cách để đặt một neo trong URL Twig để đi đến một vị trí cụ thể trên trang nếu một ngoại lệ được ném. Không thể được thực hiện, vì vậy thay vào đó, tôi đặt một biến twig trong thẻ body và đặt nó thành một chuỗi rỗng. Sau đó, nếu ngoại lệ được ném, tôi điền biến chuỗi bằng javascript, như được hiển thị trong câu trả lời của bạn (window.location.hash = "foo") và thêm nó vào kết xuất của trang: . – paidforbychrist

9

Something đơn giản như thế này sẽ làm điều đó

<body onload=' location.href="#myanchor" '> 
<a id='myanchor' href='#'>anchor text</a> 
1

Dưới đây là một bản cập nhật 2018 đó là năng động hơn một chút .

Nếu bạn muốn kéo URL, kéo neo từ URL và di chuyển trang đó đến liên kết đó, bạn có thể chạy javascript này khi tải trang.

if (window.location.href.indexOf('#') == 0) { 
    let hash = window.location.href.split('#')[1]; 
    let hashTop = document.querySelector(`#${hash}`).offsetTop; 
    window.scrollTop = hashTop; 
} 

Còn có cách này ngắn gọn hơn một chút.

if (location.hash) { 
    let target = location.hash; 
    window.scrollTop = document.querySelector(target).offsetTop; 
} 

Nếu bạn không biên dịch ES6 với babel, chỉ cần thay đổi từ khóa let-var. Điều này cũng làm việc cho WordPress, mà sẽ thêm một dấu gạch chéo trong URL trước khi neo.