隐藏div-jquery的问题

时间:2011-09-10 17:27:02

标签: jquery-ui jquery-plugins jquery

我正在使用jquery hashchange技术动态平滑地(淡入淡出)加载网站中的内容。虽然它是动态的,但地址栏中的url会发生变化,如下所示......你可以看到在文件名之前出现一个英镑符号。 的 www.whatever.com/#about.html   www.whatever.com/#contact.html 等。

在我的索引页面中,默认情况下会隐藏名为'folder1'的div,并且在加载页面后的5秒内可以看到它,并且有div文件夹2(检查代码)。 当您输入网址'www.whatever.com'时,一切正常。但是,当您点击'home'链接时,它会将附加到 index.html ,因此网址将为 whatever.com/#index。 HTML 即可。 此时div 'folder2'会在页面加载后立即显示,应根据代码隐藏。我注意到这些div的css这次搞砸了。 我不明白在那里开心的是什么。有什么帮助吗?

(function($,i,b){var j,k=$.event.special,c="location",d="hashchange",l="href",f=$.browser,g=document.documentMode,h=f.msie&&(g===b||g<8),e="on"+d in i&&!h;function a(m){m=m||i[c][l];return m.replace(/^[^#]*#?(.*)$/,"$1")}$[d+"Delay"]=100;k[d]=$.extend(k[d],{setup:function(){if(e){return false}$(j.start)},teardown:function(){if(e){return false}$(j.stop)}});j=(function(){var m={},r,n,o,q;function p(){o=q=function(s){return s};if(h){n=$('<iframe src="javascript:0"/>').hide().insertAfter("body")[0].contentWindow;q=function(){return a(n.document[c][l])};o=function(u,s){if(u!==s){var t=n.document;t.open().close();t[c].hash="#"+u}};o(a())}}m.start=function(){if(r){return}var t=a();o||p();(function s(){var v=a(),u=q(t);if(v!==t){o(t=v,u);$(i).trigger(d)}else{if(u!==t){i[c][l]=i[c][l].replace(/#.*/,"")+"#"+u}}r=setTimeout(s,$[d+"Delay"])})()};m.stop=function(){if(!n){r&&clearTimeout(r);r=0}};return m})()})(jQuery,this);

$(function() {

var newHash      = "",
    $mainContent = $("#main-content"),
    $pageWrap    = $("#page-wrap"),
    baseHeight   = 0,
    $el;

$pageWrap.height($pageWrap.height());
baseHeight = $pageWrap.height() - $mainContent.height();

$("nav").delegate("a", "click", function() {
    window.location.hash = $(this).attr("href");
    return false;
});

$(window).bind('hashchange', function(){

    newHash = window.location.hash.substring(1);

    if (newHash) {
        $mainContent
            .find("#guts")
            .fadeOut(200, function() {
                $mainContent.hide().load(newHash + " #guts", function() {
                    $mainContent.fadeIn(200, function() {
                        $pageWrap.animate({
                            height: baseHeight + $mainContent.height() + "px"
                        });
                    });
                    $("nav a").removeClass("current");
                    $("nav a[href="+newHash+"]").addClass("current");
                });
            });
    };

});

$(window).trigger('hashchange');

});
上面的

创建了整个jquery代码。

这是css.infact有两个div。

#folder1{
float: left;
height: 100px;
width: 100px;
position: absolute;
top: 15px;
right: 100px;
display: none;
    }
#folder2{
float: left;
height: 100px;
width: 100px;
position: absolute;
top: 15px;
right: 100px;
display: show;
    }

下面是隐藏和显示div的代码。

$(document).ready(function() {


$("#folder2").hide(); 

setTimeout(function(){
$("#folder1").show();
}, 5000);
setTimeout(function(){
$("#folder1").hide();
}, 10000);

setTimeout(function(){
$("#folder2").show();
}, 15000);

});

0 个答案:

没有答案