fancybox bug with trigger click

前端 未结 4 1176
孤城傲影
孤城傲影 2020-11-28 15:26

I have to run fancybox with trigger click in my website, the problem that i discovered is that with this method if you click on elements in

4条回答
  •  北荒
    北荒 (楼主)
    2020-11-28 15:58

    The problem with your code is that you are making the selector #a1 to act as both : the trigger and the target of fancybox therefore any click on itself will fire fancybox over and over again.

    You would need to create another selector (the trigger) that targets the #a1 element like

    triggers fancybox
    

    Click on the box

    if you don't want the element .fancybox be visible, just add a display:none property

    Then your js

    $(document).ready(function () {
        $('.fancybox').fancybox({
            afterClose: function () {
                console.log('closed :( ');
            }
        }).trigger('click');
    });
    

    See JSFIDDLE

    EDIT : looking at you sample JSFIDDLE, things could have been much simpler.

    Having just this html

    Click on the box

    you could use this code

    $(document).ready(function () {
        $.fancybox({
            href: "#a1"
        });
    });
    

    where no click is needed.

    See you updated JSFIDDLE

提交回复
热议问题