如何隐藏Div然后一键访问Url

时间:2009-07-03 17:06:03

标签: javascript jquery

我如何设置链接以执行某些功能,例如hide div然后转到destined url

类似这样的事情

(文档)$。就绪(函数(){  $( “A”)。点击(函数(){        $( “#DIV1”)效果基本show( “慢”)。        $( “#DIV2”)效果基本show( “慢”)。        //然后转到index.html    }); });

这是我的设置。

<script type="text/javascript">   $(document).ready(function(){
     $("a").click(function(){
     $("#one").hide("slow");
     $("#two").hide("slow" , function(){
     window.location (index.html);
       });
    });   });    </script>   

<div id="one"> some content </div>

<div id="two"> some content </div>

<a href="#">BUTTON HERE</a>

它只执行隐藏功能,如果我替换html中的url,它只执行url。我一定是做错了什么

5 个答案:

答案 0 :(得分:3)

尝试将重定向作为回调放在最后一次幻灯片后执行:

$(document).ready(function(){ 
    $("a").click(function(){ 
        $("#div1").slideUp("slow"); 
        $("#div2").slideUp("slow", function(){
           window.location(url); // or window.location.replace(url);
        }); 
    }); 
});

答案 1 :(得分:2)

“Location”实际上是窗口对象的属性,不是方法。这意味着您需要为其赋值=,而不是将其作为参数传递给()。试试这个代码:

$("a").click(function(event){ 
    event.preventDefault();
    var url  = $(this).attr("href");
     $("#div1").slideUp("slow"); 
     $("#div2").slideUp("slow", function(){
       window.location=url;
    }); 
 }); 

此外,链接的默认行为是转到URL,它将运行该行为,除非您使用“return false;”之类的内容停止它。虽然将href设置为“#”不会将用户带到任何地方,但它会将它们滚动到页面的顶部,这可能很烦人。最好还是假它。

答案 2 :(得分:0)

你所拥有的可能是正确的。以下是转到新网址所需的内容:

top.location.href='someURL';

答案 3 :(得分:0)

JQuery中没有任何内容可以从当前页面重定向到其他页面,但JavaScript有它的位置对象,您可以像以下一样使用它:

$(document).ready(function(){ 
    $("a").click(function(){ 
        $("#div1").slideUp("slow"); 
        $("#div2").slideUp("slow"); 
        window.location(url); // or window.location.replace(url);

    }); 
});

您可以在此处阅读JavaScript中的更多abot重定向:How to redirect to another webpage in JavaScript/jQuery?

答案 4 :(得分:0)

你真的需要在javascript中设置位置吗?只需输入href属性有什么问题?