2013-05-17 30 views
6

Tôi gặp sự cố không bình thường với trang web mà tôi đã tạo cho một người bạn.
Đang tải HTML vào div - sự cố bất thường

Tôi đã tạo index.html với các liên kết xuống thanh bên bên trái để giữ nguyên không đổi. Khi bạn nhấp vào liên kết, tệp HTML bên ngoài được gọi bên trong div chính ở giữa trang.

Điều này làm việc tuyệt vời nhưng với một vấn đề nhỏ (mà thực sự là một vấn đề gây phiền nhiễu)!

Nếu bạn nhấp vào liên kết đầu tiên, 'sản phẩm' chẳng hạn, bạn có thể cuộn từ bên trái sang bên phải sang hình ảnh cuối cùng một cách độc đáo. Nếu sau đó bạn nhấp vào 'thời trang', một tệp HTML khác được gọi nhưng nó gọi nó ở giai đoạn bạn đã dừng lại từ 'sản phẩm' tức là tất cả các cách sang phải và không phải lúc đầu.

Tôi về cơ bản cần buộc HTML phải gọi trang ở đầu mỗi lần nhấp vào một liên kết. Dưới đây là weblink của tôi để bạn có thể thấy những gì tôi đang nói về ...

http://www.hannahdakin.co.uk/betasite

T.B. Tôi không thể tìm thấy bất kỳ ai khác với một vấn đề tương tự sau khi tìm kiếm trên diễn đàn, nhưng có thể có một thuật ngữ cho vấn đề này mà tôi không quen thuộc với.

Tôi sẽ mãi mãi biết ơn nếu có ai có thể giúp !!

+0

http://demos.flesler.com/jquery/scrollTo/ –

+2

Chào mừng bạn đến với Stack Overflow. Vui lòng thử hiển thị mã có liên quan trực tiếp trong câu hỏi của bạn. (Và nếu bạn định cung cấp một URL tới một trang bên ngoài, ít nhất hãy làm cho nó có thể nhấp được ...) – nnnnnn

+1

Chào mừng bạn đến với stackoverflow! [Xin vui lòng gửi mã thực tế cho vấn đề cụ thể của bạn và không phải là một liên kết đến một trang web.] (Http://meta.stackexchange.com/q/125997) Tôi cũng khuyên bạn nên đọc [FAQ] (http: //meta.stackexchange .com/questions/7931/faq-for-stack-exchange-sites) để giúp bạn nhận được câu trả lời nhanh nhất có thể. –

Trả lời

2

Bạn sẽ cần áp dụng lệnh jQuery .scrollLeft(0) vào thân trang của mình để đặt lại vị trí ngang trên mỗi nhấp chuột. Ví dụ:

$('#products').click(function(){ 
    $('.slider').load("allimages.html #products2"); 
    $('body').scrollLeft(0); 
}); 

Điều này phải được thực hiện trên thân trang, vì thanh cuộn của bạn được neo vào toàn bộ trang chứ không phải vùng chứa.

Bạn sẽ cần phải sao chép điều này cho mỗi sự kiện nhấp vào menu của bạn.

+0

Cảm ơn, điều này đã làm việc quá! – user2393778

3

Bạn có thể sử dụng .scrollLeft(0) để đặt lại vị trí cuộn ngang trong <div>.

+0

Ah xin lỗi vì đã không đặt mã thực sự vào, tôi chắc chắn sẽ làm điều đó trong tương lai. Tôi thực sự nhận ra vấn đề nằm trong tài liệu html. Tôi đã có tất cả id div của tôi trong một tập tin html (để dễ dàng) nhưng khi tôi thực hiện html riêng biệt của họ tất cả nạp vào đầu ... Tôi sẽ thử scrollLeft này (0) tuy nhiên bây giờ! – user2393778

+0

hoàn hảo, cảm ơn! – user2393778

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