1

所以我有代码:

header("Location: ".$config['site_url']."index.php#login-box");

如果用户未登录,这是我尝试触发 jquery 登录表单的 html 代码:

<li><a class="log" href="#login-box"><span class="hover" style="opacity: 0;"></span></a></li> 

但是当它运行时,它所做的只是将#login-box 添加到我的url 的末尾,并且不会触发#login-box href。我知道相当蹩脚的尝试,但有什么想法吗?

这是 jquery 脚本,我将如何正确添加您提到的代码?

             $(document).ready(function() {
$('a.login-window2').click(function() {

            //Getting the variable's value from a link 
    var loginBox = $(this).attr('href');

    //Fade in the Popup
    $(loginBox).fadeIn(300);

    //Set the center alignment padding + border see css style
    var popMargTop = ($(loginBox).height() + 24) / 2; 
    var popMargLeft = ($(loginBox).width() + 24) / 2; 

    $(loginBox).css({ 
        'margin-top' : -popMargTop,
        'margin-left' : -popMargLeft
    });

    // Add the mask to body
    $('body').append('<div id="mask"></div>');
    $('#mask').fadeIn(300);

    return false;
});

// When clicking on the button close or the mask layer the popup closed
$('a.close, #mask').live('click', function() { 
  $('#mask , .login-popup').fadeOut(300 , function() {
    $('#mask').remove();  
}); 
return false;
});
});
             </script>
4

2 回答 2

2

这是一个小片段,应该可以使用您提到的jQuery:

$(function(){
    $("a.login-window2").click(function(){
        //Getting the variable's value from a link
        var loginBox = $(this).attr("href");
        //Fade in the Popup
        $(loginBox).fadeIn(300);
        //Set the center alignment padding + border see css style
        var popMargTop = ($(loginBox).height() + 24) / 2;
        var popMargLeft = ($(loginBox).width() + 24) / 2;
        $(loginBox).css({
            "margin-top" : -popMargTop,
            "margin-left" : -popMargLeft
        });
        // Add the mask to body
        $("body").append("<div id=\"mask\"></div>");
        $("#mask").fadeIn(300);
        return(false);
    });
    // When clicking on the button close or the mask layer the popup closed
    $("a.close, #mask").live("click", function(){
        $("#mask , .login-popup").fadeOut(300, function(){
            $("#mask").remove();
        });
        return(false);
    });
    // Check the hash
    var hash = $(location).attr("hash");
    if(hash == "#login-box") {
        $("a.login-window2").click();
    }
});

将其放入您的index.php文件中并从if语句内部运行您的代码。

于 2013-03-22T02:00:51.597 回答
-1

这是您的代码中的错误。

利用:name="#login-box"

代替:href="#login-box"

于 2013-03-22T02:05:33.017 回答