保持一个元素活着?在浏览网站时?

时间:2011-08-23 05:00:06

标签: php jquery load

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

我希望我的问题很清楚?

谢谢!

5 个答案:

答案 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 :(得分:1)

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

您也可以使用AJAX加载页面,这是一种更合乎逻辑的方法。

答案 2 :(得分:0)

正如乔所提到的那样,框架是一种选择,但是这些日子它们都是皱眉头。

另一种选择是使用AJAX。这比帧更复杂,但会带来更好的体验。基本上,你要做的是初始页面加载,这也会加载一些JavaScript。 JavaScript将附加到任何链接。单击链接时,JavaScript会将新页面加载到当前页面,而不是像普通链接一样转到新页面并刷新整个页面。要加载的另一个页面只是一个部分HTML页面,即不包括html,head,body标签和菜单等。相反它只是内容。

以下是使用jQuery执行此操作的一些基本JavaScript:

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

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

另一种选择是加载隐藏div中其他页面的所有内容。如果您有很多内容,这可能会导致非常大的初始负载。在这种情况下,您的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'));
});

希望这有帮助。

答案 3 :(得分:0)

唯一真正的方法是使用ajax加载页面。因此,除了页脚之外,你将拥有一个包含其中所有内容的大型div。然后,当有人点击你的大div内的链接时,它会抓取链接页面,并用新页面刷新大div。其他答案更详细,这只是一个非常简单的解释。我会开始研究Ajax。

答案 4 :(得分:-2)

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