2016-07-14 2 views
-2

Я хотел бы иметь веб-страницу, которая имеет ту же горизонтальную навигационную панель и нижний колонтитул, но содержимое будет загружаться динамически, в зависимости от того, что пользователь нажимает на навигационную панель.Как создать веб-страницу исправления php, которая имеет фиксированную навигационную панель и нижний колонтитул

экс

<div class="nav-bar"> 
/* this is always same mainTemplate.php */ 
</div> 

<div class="main-content"> 
/* here i load different pages like content1.php or content2.php or content3.php, depending what the user clicks on the different nav-bar sections/buttons */ 
</div> 

<footer> 
/* this is always same mainTemplate.php */ 
</footer> 

, как сделать это с Javascript или AJAX или PHP или что-то?

+0

Вы можете использовать загрузочный шаблон для этого. Откройте этот https://www.codecademy.com/courses/my-first-webpage/0/1 –

+0

Я уже использую загрузочную страницу для своей страницы .. какую тему я должен использовать и как? Спасибо! PS: Почему я становлюсь - голосом? – ZelelB

+0

@KarimBelkhiria может быть, потому что вы сомневаетесь в том, что проблема у вас есть, вы спрашиваете об этом учебнике или коде, не должны приводить пример, попробуйте войти в какой-то код, если у вас есть проблема, а затем опубликуйте его на здесь –

ответ

1

, как это может быть:

PHP:

<div class="nav-bar"> 
/* this is always same mainTemplate.php */ 
<ul> 
    <li id="op1">op1</li> 
    <li id="op2">op2</li> 
    <li id="op3">op3</li> 
</div> 

<div class="main-content"> 
/* here i load different pages like content1.php or content2.php or content3.php, depending what the user clicks on the different nav-bar sections/buttons */ 
</div> 

<footer> 
/* this is always same mainTemplate.php */ 
</footer> 

<script src="yourScript.js" type="text/javascript"></script> 

JS: (yourScript.js)

(function(){ 
    var elems = document.getElementsByTagName("li"); 
    for(idx = 0; idx < elems.length; idx++){ 
     elems[idx].addEventListener("click", menuClick, false); 
    } 
    loadDoc("homePage.html"); 
})(); 

function menuClick(li){ 
     li.stopPropagation(); 
     li.stopImmediatePropagation(); 
     if(li.target.getAttribute("id") == "op1"){ 
     loadDoc("yourContentPage.php"); 
     } 
     if(li.target.getAttribute("id") == "op2"){ 
     loadDoc("yourContentPage2.php"); 
     } 
     if(li.target.getAttribute("id") == "op3"){ 
     loadDoc("yourContentPage3.php"); 
     } 
} 

function loadDoc(yourContentPage) { 
    var xhttp = new XMLHttpRequest(); 
    xhttp.onreadystatechange = function() { 
     if (xhttp.readyState == 4 && xhttp.status == 200) { 
      document.getElementById("main-content").innerHTML = xhttp.responseText; 
     } 
    }; 
    xhttp.open("POST", yourContentPage, true); 
    xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
    xhttp.send(); 
} 
+0

отлично!Спасибо – ZelelB

+0

, и если мне захочется, вначале загрузится конкретное основное содержание? как домашняя страница/индексная страница, которая является одной из трех контент-страниц? – ZelelB

+0

вы можете его жестко закодировать или сделать JS-вызов 'loadDoc (" homePage.html ");' после добавления 'eventListener' ... обновленного кода;) –

1

Для этого можно использовать AJAX.

Если вы также используете jquery, у него есть встроенные функции для него. См. http://www.w3schools.com/jquery/jquery_ajax_intro.asp

Поскольку на вашей стороне не видно усилий, я считаю, что ссылка на учебник AJAX - это то, что вам нужно.

+2

Это должен быть комментарий, ответы должны быть информативными и подробными с решением и кодом внутри них –

+0

Я знаю, я отредактировал свой ответ сразу после его публикации и включил код и ссылку на ajax. Хотя я думаю, что ссылка на функцию включения - это все, что необходимо ОП (если бы я ясно понял его вопрос). И возможность google вещи тоже. – Kalko

+0

op не запрашивает функцию включения php, он хочет динамически загружать содержимое для div, когда вы нажимаете на панель навигации. Таким образом, ajax - это решение, вы можете отправить пример запроса ajax в некоторый php-файл. и показать ему, + –

0

Простой сайт демо https://www.codecademy.com/courses/my-first-webpage/0/1

В противном случае вы можете использовать загрузочный шаблон для этого http://startbootstrap.com/template-categories/all/

Открыть эту и скачать.

+2

это должен быть комментарий, ответы должны быть информативными и подробными с решением и кодом внутри них –

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