2013-08-17 4 views
0

JS Fiddle
Original Idea/Another version of this questionURL хэш на основе слайдера

Внимание! Другой вариант этой идеи/первоначальная идея была так ответили, если другая версия работает для вас, ваше добро пожаловать :)

Этот вопрос остается открытым

Так вот мой новый идея, с которой я столкнулся. Я хочу создать слайдер изображения. Ползунок имеет все изображения внутри него, и когда страница превращается в хеш, например #home, я хочу, чтобы ползунок обновлялся до нового изображения. Ползунок плавающий. Другое дело, что я не хочу, чтобы он прокручивал другие изображения. Я просто хочу, чтобы он прокручивался прямо к этому изображению. Мне также нужно прокручивать по вертикали, так как изображения имеют разную ширину. Мне плохо, что я в основном делаю запрос на работу, поэтому this - это то, что я считаю правильным. Я могу написать код, если кто-то скажет мне, что мне нужно сделать.

Это код JS Fiddle. Я просто ссылку, так что можно работать:

//This also need to execute when the hash is updated/an anchor link is clicked 
window.onLoad = function hashLogo() { 
var hash = window.location.hash; 

//Image 1 Hashes 
var image1 = [ 
    '#image1', 
    '#home' 
    ]; 

//Image 2 Hashes 
var image2 = [ 
    '#image2', 
    '#about' 
    ]; 

if (image1.indexOf(hash) > -1) { 
    //Do jQuery Sliding 
} 

if (image2.indexOf(hash) > -1) { 
    //Do jQuery Sliding 
} 
}; 

ответ

0

То, что я думаю, что вам нужно, это перехват событий на событие hashchange:

$(window).hashchange(function(){ 
    // Do something when the hash changes 
    // alert(location.hash); 
}); 

Если вы также можете использовать Бен Alman потрясающе hashchange plugin (0,8 kb), он также гарантирует, что событие будет заполнено в браузерах, которые его не поддерживают.

Смежные вопросы