无法在fancybox中输入文字

时间:2014-10-20 10:36:42

标签: jquery fancybox fancybox-2

我无法在fancybox的文本框中输入任何文字。

点击“更改电子邮件地址”

这是我的代码Jsfiddle

的Javascript

$(document).ready(function() {
        $("#emailverification").fancybox({
         closeClick  : true, // prevents closing when clicking INSIDE fancybox 
         openEffect  : 'none',
         closeEffect : 'none',             
         closeBtn : false,                
//             keys : {
//                close  : null
//             },
         helpers   : { 
          overlay : {closeClick: false} // prevents closing when clicking OUTSIDE fancybox 
         }
        }).trigger("click");

        $('#logout').click(function(){
            window.location="<?php echo site_url(); ?>home/logout";                
        });

        $('#addbtn').click(function(){
            $(".input_add").toggle(); //add input box                                 
        });   

        $( "#resendemail" ).click(function() {
            //code here...
        });
    });

提前致谢。

1 个答案:

答案 0 :(得分:1)

您的代码存在的问题是您将选择器#emailverification称为fancybox的触发器目标

你有这个HTML:

<div id="emailverification" style="display:none;">
    <!-- content -->
</div>

...然后你正在做

$("#emailverification").fancybox({ ... }).trigger("click");

...所以,每次click #emailverification的内容时,都会反复触发fancybox,因此您无法在其中输入任何文字。

只需将您的代码更改为:

$.fancybox("#emailverification", { ... });

...以编程方式触发fancybox。 注意我们摆脱了.trigger()方法。

顺便说一句,选项closeClick应该转到false,否则点击fancybox会关闭它。有关详细信息,请参阅此https://stackoverflow.com/a/8404587/1055987

查看您的分叉 JSFIDDLE