jQuery - 不同浏览器中的不同行为

时间:2013-09-14 18:04:10

标签: jquery browser oxwall

我正在尝试从https://github.com/Kicksend/mailcheck实现mailcheck jquery插件,我能够让它成功运行。

但问题是它在Firefox和Chrome中运行良好(有时)但在Opera中没有。

如何测试?

1)转到http://oxwall-demo.iyaffle.com/join链接,它将打开一个注册表单
2)在“'电子邮件”字段中,输入不带引号的“adfd@gnail.com”并移至下一个字段

焦点超出字段后,电子邮件拼写建议将显示在文本框下方。此行为在某些浏览器中可以正常工作,而在其他浏览器中则无效。

我的代码浏览器是依赖还是浏览器以不同的方式解释我的代码?请指出我的代码中的任何错误。

注意:在任何浏览器中,浏览器调试控制台都没有任何错误。

正在使用的jQuery:

<script type="text/javascript">
$(document).ready(function(){
    var domains = ['hotmail.com','gmail.com','aol.com','outlook.com','yahoo.com','yahoo.in'];
    var topLevelDomains = ['com','net','org','info','me','co.uk','co.in','in'];

    $("input.ow_email_validator:eq(0)").parent().append("<div id=\"correction\"></div>"); 

    $(document).on("blur", "input.ow_email_validator", function() {

        $("input.ow_email_validator:eq(0)").mailcheck({
            suggested: function(element, suggestion) {
                if(!$("#correction").html()) {
                    var suggestion = "Did you mean <span class=\"suggestion\">" +
                        "<span class=\"address\">" + suggestion.address + "</span>"
                        + "@<a href=\"#\" class=\"domain\">" + suggestion.domain + 
                        "</a></span>?";

                    $("#correction").html(suggestion).fadeIn(150);
                }
                else{
                    $(".address").html(suggestion.address);
                    $(".domain").html(suggestion.domain);
                }
            }
        });
    });

    $("#correction").on("click", ".domain", function() {
        $("input.ow_email_validator:eq(0)").val($(".suggestion").text());
        $("#correction").fadeOut(200, function() {
            $(this).empty();
        });
        return false;
    });

});
</script>

0 个答案:

没有答案
相关问题