2011-08-23 80 views
0

我不知道该怎么问,但我希望有人能帮助我。在浏览网站时是否有可能让某个元素(即:页脚或某种类型)保留在查看器页面中?即使用户更改页面(或点击链接),页脚也不会消失?保持元素活着?浏览网站?

我希望我的问题清楚吗?

谢谢!

+0

这是几年前的幻想......但比我们的搜索引擎优化专家说:“NC ... NC,NC .... NC!” (AJAX) –

+0

nc是什么意思?我是nb! – hellomello

+0

不,你没事,我只想说,在某些情况下,如果你关注SEO,Ajax并不是最受欢迎的方法。 (nc = nooo!) –

回答

-2

我认为你正在寻找HTML框架。互联网上有很多资源。这里有一个,http://www.w3schools.com/html/html_frames.asp

+4

-1用于提示框架,另一个用于指向w3schools。框架是iirc弃用。 –

+0

Heheheheheh Rikudo! +100给你;) –

+0

我认为足够公平。 –

2

可以实现的方式是当有人点击您网站上的链接时,通过AJAX/jQuery加载所有内容。

有些事情,你要找的是如下:

<HTML> 
    <HEAD> 
    <SCRIPT src="jquery.js"></SCRIPT> 

    <SCRIPT> 
    function getPage(page) 
    { 
    $("#mainContent").load(page); 
    } 
    </SCRIPT> 
    </HEAD> 
    <BODY> 
    <DIV> 
    <a href="Javascript:getPage('aboutus.html')">About Us</a> 
    <a href="Javascript:getPage('contactus.html')">Contact Us</a> 
    </DIV> 

    <DIV id="mainContent"> 
    Here is the default/home page information 
    </DIV> 
    </BODY> 
    </HTML> 

的链接页面只需要具备核心的信息在其中,并会自动给出从着陆页中的任何CSS信息。但是,您将拥有菜单,并且在页面上mainContent div标记之外的任何内容都是静态的。

1

您可以使用iframe来显示您的网站,并让页脚保留在实际文件中。这虽然有它的缺点,所以我不推荐它。

你也可以使用AJAX来加载你的页面,这是一个更合理的方法。

0

正如乔所说,框架是一种选择,但他们在这些天皱起了眉头。

另一种选择是使用AJAX。这比框架更复杂,但会带来更好的体验。基本上,你要做的是初始页面加载,这也会加载一些JavaScript。 JavaScript将被附加到任何链接。当点击链接时,JavaScript不会像正常链接那样转到新页面并刷新整个页面,而是会将新页面加载到当前页面中。将被加载的其他页面将只是一个部分HTML页面,即不包括html,头部,主体标签和菜单等,而只是包含内容。

下面是使用jQuery做一些基本的JavaScript:

// attach a click handler to any nav links 
$('nav a').click(function(event) { 
    event.preventDefault(); 

    $('#content').load($(this).attr('href')); 
}); 

另一种选择是加载在隐藏层的其他页面中的所有内容。如果您有很多内容,这可能会导致非常大的初始负载。在这种情况下,你会在你的HTML中有这样的东西:

<style> 
    .content { display:none; } 
</style> 
<nav> 
    <a href="home">home</a> 
    <a href="contact">contact</a> 
</nav> 
<div class="content content_home" style="display:inherit;">...</div> 
<div class="content content_contact">...</div> 

// attach a click handler to any nav links 
$('nav a').click(function(event) { 
    event.preventDefault(); 

    $('.content').hide().filter('.content_' + $(this).attr('href')); 
}); 

希望这会有所帮助。

0

要做到这一点,唯一的方法是使用ajax加载页面。所以你会有一个大的div来包含它里面的一切,除了页脚。然后,当有人点击你的大div内的链接时,它会抓住链接页面,并用新页面刷新大div。其他答案更详细,这只是一个非常简单的解释。我会开始研究Ajax。