আমার ওয়েবসাইটে একটি স্লাইডিং প্যানেল স্থাপন করা আছে।
এটি অ্যানিমেটিং শেষ হলে, আমি হ্যাশটি সেট করেছিলাম
function() {
window.location.hash = id;
}
(এটি একটি কলব্যাক, এবং এটি id
পূর্বে বরাদ্দ করা হয়েছে)।
ব্যবহারকারীটি প্যানেলটি বুকমার্ক করার অনুমতি দিতে এবং জাভাস্ক্রিপ্টহীন সংস্করণে কাজ করার জন্য এটি ভাল কাজ করে।
যাইহোক, আমি যখন হ্যাশ আপডেট করি তখন ব্রাউজারটি লোকেশনে লাফ দেয়। আমার ধারণা এটি প্রত্যাশিত আচরণ।
আমার প্রশ্ন: আমি কীভাবে এটি প্রতিরোধ করতে পারি? অর্থাত আমি উইন্ডোর হ্যাশ পরিবর্তন করতে পারেন কিন্তু না উপাদান যদি হ্যাশ বিদ্যমান ব্রাউজার স্ক্রল আছে? কিছু ধরণের event.preventDefault()
জিনিস?
আমি jQuery 1.4 এবং স্ক্রোলটো প্লাগইন ব্যবহার করছি ।
অনেক ধন্যবাদ!
হালনাগাদ
প্যানেল পরিবর্তন করে এমন কোড এখানে।
$('#something a').click(function(event) {
event.preventDefault();
var link = $(this);
var id = link[0].hash;
$('#slider').scrollTo(id, 800, {
onAfter: function() {
link.parents('li').siblings().removeClass('active');
link.parent().addClass('active');
window.location.hash = id;
}
});
});
event.preventDefault()
:)