-3

嗨,我一直在向我的网站添加一些动画,例如在登录页面等

但是我首先发现动画执行但不是 PHP 代码,当我执行 PHP 代码时,动画不起作用... PHP 代码更重要,但即使我使用 form.submit() 函数似乎jquery PHP 代码永远不会触发。我知道这一点,因为我尝试了替代方法,并且它在没有 jQuery 的情况下也可以工作。

我正在使用 1.9.0,这是 jQuery 代码

jQuery('#loginform button').click(function()
        {
            if(!jQuery.browser.msie) 
            {
                if(jQuery('#username').val() == '' || jQuery('#password').val() == '') 
                {
                    if(jQuery('#username').val() == '') jQuery('#username').addClass('error'); else jQuery('#username').removeClass('error');
                    if(jQuery('#password').val() == '') jQuery('#password').addClass('error'); else jQuery('#password').removeClass('error');
                    jQuery('.loginwrap').addClass('animate0 wobble').bind(anievent,function()
                    {
                        jQuery(this).removeClass('animate0 wobble');
                    });
                } 
                else 
                {
                    jQuery('.loginwrapper').addClass('animate0 fadeOut').bind(anievent,function()
                    {
                        $.post(username, {username});
                        $.post(password, {password});
                        jQuery('#loginform').submit();
                    });
                }
                return false;
            }
        });

如您所见,最初我从 jquery 获得了要发布的代码,但是无论我尝试什么动画都不会运行。

谁能告诉我为什么...或者我应该以什么方式使动画发生然后PHP?

4

1 回答 1

0

你有没有包装上面的 JS 让它等到文件完成加载后才执行?如果您不这样做,则可能发生的情况是 javascript 正在尝试对尚未呈现的元素进行操作。因此,#loginform button当它尝试绑定到该元素时,可能还不存在。

将您的 JS 包装在此:

jQuery(function(){
    // All JS that executes on load here.
});
于 2013-03-18T21:41:07.293 回答