Вход

Просмотр полной версии : Как реализовать переход с одной страницы на другую с помощью клавиш "стрелок"


bazilio2010
12.11.2011, 20:33
Сайт галерея, под каждую картинку своя страница. Справа и слева ссылки в виде стрелочек при нажатии на которые происходит навигация по картинкам.
Дело в том, что после пару нажатий рука сама тянется управлять этим с помощью клавиатуры.
Как реализовать переход со страницы на страницу с помощью кнопок навигации на клавиатуре?

trikadin
12.11.2011, 21:26
document.onkeypress= function(event) {
event= event||window.event;
if (event.keyCode == /*здесь подставите код стрелочек*/)
window.location= "page.html"; //здесь подставите ту страницу, которая вам нужна
};

bazilio2010
13.11.2011, 00:58
Спасибо помогли!

bazilio2010
13.11.2011, 19:56
Подскажите почему этот код работает в Мозиле IE Opere и не работает в GOOGLE Hrome?

<script type="text/javascript">

document.onkeypress= function(event) {

event= event||window.event;

if (event.keyCode == 39)
window.location= "/photo/'. $right['photo_id']/";

else if (event.keyCode == 37)
window.location= "/photo/'.$left['photo_id'].'/";

};
</script>

observer
13.11.2011, 20:20
Для начала посмотрите (и прочитайте) как работают клавиатурные события --
http://www.quirksmode.org/dom/events/keys.html

Затем подумайте, где можно хранить строковые значения (как аргументы для функций слушающих события) -- обычно, в самое простом случае, это хранят в элементе link (http://www.w3.org/TR/html4/struct/links.html#h-12.1.2).

Потом, посмотрите что за объект такой, location. Какие у него есть свойства. И почему лучше писать так (ну, если без window никуда, то используйте window) -- window.location.href.

bazilio2010
13.11.2011, 22:16
Все вроде бы сделал, работает, если, кто нибудь подскажет как более грамотно буду рад!

<script type="text/javascript">
document.onkeydown = function(event)
{
event= event||window.event;
if (event.keyCode == 39) window.location.href= "page.html";
else if (event.keyCode == 37) window.location.href= "page1.html";
};
</script>

observer
13.11.2011, 23:58
Простите, я больше не могу... http://www.virtualireland.ru/images/smilies/MED.gif