We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 1772
    • 19 Posts
    Здравствуйте.

    Наверняка многие видели на различных сайтах навигацию организованную по принципу веред--назад.
    Зажимаем контрол и жмем соотвествующую кнопку курсора. Переходим на нужную страницу.
    Орагнизовано это при помощи простейшего скрипта:

    document.onkeydown = NavigateThrough;
    
    function NavigateThrough (event)
    {
    	if (!document.getElementById) return;
    
    	if (window.event) event = window.event;
    
    	if (event.ctrlKey)
    	{
    		var link = null;
    		var href = null;
    		switch (event.keyCode ? event.keyCode : event.which ? event.which : null)
    		{
    			case 0x25:
    				link = document.getElementById ('NextLink');
    				break;
    			case 0x27:
    				link = document.getElementById ('PrevLink');
    				break;
    			case 0x26:
    				link = document.getElementById ('UpLink');
    				break;
    			case 0x28:
    				link = document.getElementById ('DownLink');
    				break;
    			case 0x24:
    				href = '/';
    				break;
    		}
    
    		if (link && link.href) document.location = link.href;
    		if (href) document.location = href;
    	}			
    }
    


    и LINK вставок

        <link rel="next" href="/next.html" type="text/html" title="Следующая страница" />
        <link rel="prev" href="/prev.html" type="text/html" title="Предыдущая страница" />
    


    хочется воспроизвести это у себя на сайте.

    как можно получить ID, или еще лучше URL (псевдоним) предыдущей и следующей страницы в папке?
    как динамически запихнуть эти LINK в шапку сайта? (подобное проделывает MaxiGallery со вставками javaScript).

    Спасибо.
      • 33694
      • 742 Posts
      На пхп:
      - получаем в порядке по возрастанию menuindex всех чилдренов родителя (getChildren)
      - находим среди них себя: текущий id и соответсвтующий ему menuindex (циклическая проверка ключей массива, или пробуем предсказать)
      - получаем id следующего и предыдущего в порядке следования пунктов меню документа и генерируем на них ссылки (makeUrl)
      - выводим это всё каким нибудь образом, например, через шаблон (getChunk)
      Скрипты и css можно пихать в заголовок с помощью функции regClientStartupScript.


      Ждём готовый сниппет smiley
        • 897
        • 1,620 Posts
          "Und wenn du lange in einen Abgrund blickst, blickt der Abgrund auch in dich hinein."

          Не используйте Revo для "просто сайтов". Используйте Evo

          Who can defeat the Russian bear?