Redirecionar Página com Javascript Frame Redirect

Este tutorial é para as pessoas que têm sites que usam frames. Num local moldado, não é normalmente, pelo menos, dois quadros; um quadro de navegação que detém os links para navegar ao redor do local, e um quadro de conteúdo que detém o conteúdo da página. Claro que pode haver mais de dois quadros, mas vou focar apenas dois para a simplicidade. Normalmente, um usuário navega para um site digitando o URL comohttp://scriptasylum.com . Normalmente, a maioria das pessoas não costumam digitar a página específica que eles querem, eles usam a navegação do site. Mas vamos dizer, por exemplo, um usuário que digitar o URL exato da página eles querem ir. Isso funciona bem …. até chegar a um site que usa frames.

 

O problema…

Como a maioria das pessoas geralmente usam um quadro para a navegação e um ou mais de conteúdo do site, digitando ou marcando a URL provoca diretamente um problema: A página é carregada, mas o resto dos outros quadros não são carregados. Portanto, você não pode navegar ao redor do local, a menos que aconteça a conhecer os URLs exatos das páginas que eles querem ver. Clique nos links abaixo para demonstrar este efeito.

A única ligação que carregou os quadros a maneira correta era o link “Índice de página”. Isso é porque esta página contém o código HTML que define os quadros. A fim de carregar o site da maneira correta, o usuário deve sempre ir para o site usando a página do índice.

Redirecionar Página com Javascript Frame Redirect

Um caminho a percorrer em torno dessa limitação woould ser colocar um script em cada página que verifica se a página foi carregada com os quadros próprios. Se o usuário digita uma URL direta, o script redireciona para a página de índice que carrega o site usando o conjunto de quadros adequada. Este script é realmente muito simples, você só colar algumas linhas de javascript código para a seção HEAD de todas as páginas em seu site, exceto a página de índice:

<Script language = "javascript">
if (self.location == top.location) self.location = "index.html";
</ Script>

Esta solução funciona muito bem; é fácil para adicionar a qualquer página e não há nada para mudar. A única característica ruim é o site vai sempre carregar a página inicial padrão não importa o que eles realmente URL digitada. Algumas pessoas podem achar isso irritante. Seria muito bom se o usuário poderia simplesmente digitar a página que queria ir para e iria carregar automaticamente os quadros adequados com a página que digitou onde deveria estar! A única página isso seria o ideal no seria a página de navegação . Se alguém digitou no URL da página de navegação (o que é improvável), é OK para o conjunto de quadros para carregar a configuração home page padrão.

A Better Way

Com um pouco mais ajustes para o script acima, você pode redirecionar e carregar a página que o usuário deseja. O truque é “dizer” a página do índice da página que o usuário realmente queria ver. Então, quando o script redireciona para a página de índice, um script vai “ler” essas informações e carregar a página direita. Basta usar o script acima, mas adicionar um ponto de interrogação e o URL da página para o final do resto do URL:

<Script language = "javascript">
if (self.location == top.location) self.location = "index.html page1.html? ";
</ Script>

O exemplo acima deve redirecionar para index.html e depois carregar page1.html para a área de conteúdo em vez de o que quer que a página padrão teria sido. Você deve colocar o nome da página atual no script embora.Assim, em page2.html , você tem que colocar ” ? Page2.html “. Não se esqueça: isso tem que ser feito para cada . Página, exceto a página de navegação e a página de índice Você terá que adicionar outro pequeno script para a página do índice também. Isto é para que ele possa saber qual página para realmente carregar. Se você não tem um ? Na URL, ele irá simplesmente carregar a página inicial padrão. Basta colar este script para a seção HEAD da sua página do índice (a página que estabelece os quadros):

<Script language = "javascript">
var fname = "conteúdo"; // Quadro principal área de conteúdo ** NOME **

window.onload = function () {
var d = document.location.search;
if (! d = '') top.frames [fname] .document.location.href = d.substring (d.lastIndexOf ( '?') + 1, d.length);
}
</ Script>

A única definição que tem que ajustar é o nome quadro. Quando você configura os seus quadros, você deve ter dado pelo menos, o quadro de conteúdo um nome. Basta digitar esse nome no script acima. Este script também assume o quadro de conteúdo não está encaixado quaisquer outros quadros. Se assim for, você pode ajustar o script em conformidade. Clique nos links abaixo para demonstrar o script em ação. Cada uma destas ligações cargas apenas a página diz que cada.

Cada link abriu a página pretendida, sem ter de voltar a navegar até a página específica uma vez que o conjunto de quadros foi carregado.

Recapitular

OK, agora eu vou recapitular qual script é estar em qual página só para ter certeza de que ninguém fica confuso.

Cole este código JavaScript na seção HEAD da sua página do índice (a página que define os conjuntos de quadros). Não se esqueça de ajustar o nome de quadro no script!
<Script language = "javascript">
var fname = "conteúdo"; // Quadro principal área de conteúdo ** NOME **

window.onload = function () {
var d = document.location.search;
if (! d = '') top.frames [fname] .document.location.href = d.substring (d.lastIndexOf ( '?') + 1, d.length);
}
</ Script>

 

Cole este código JavaScript na seção HEAD de todas as suas páginas de conteúdo. Você nãocole este código na página de índice ou sua página de navegação. Não se esqueça de colocar o URL da página no lugar certo!
<Script language = "javascript">
if (self.location == top.location) self.location = "index.html? page_URL_here ";
</ Script>

 

Cole este código JavaScript na seção HEAD da sua página de navegação. Não há configurações para ajustar em um presente.
<Script language = "javascript">
if (self.location == top.location) self.location = "index.html";
</ Script>
Redirecionar Página com Javascript Frame Redirect
Avalie o post