开放模式iframe,仅在指定的类/ div上

时间:2018-11-15 11:33:32

标签: javascript jquery html modal-dialog

在这种小提琴中,可以将href作为模式打开。但这会打开所有href。是否可以仅使用某些给定的id或class打开模式? 例如,如果a类是:openiframe

  <a class="openiframe" href="https://www.website.com" class="btn btn-info btn-lg cta-open">External Link</a>

此小提琴适用于所有href。 https://jsfiddle.net/solodev/0dtmcaxh

js:

// Open external links in a popup modal notice
$(window).on('load', function(){

    $.expr[":"].external = function(a) {
        //var linkHref = a.hostname;
        //var domainHref = location.hostname;

        var linkhn = a.hostname.split('.').reverse();
        var linkHref = linkhn[1] + "." + linkhn[0];

        var domainhn = window.location.hostname.split('.').reverse();
        var domainHref = domainhn[1] + "." + domainhn[0];

        return !a.href.match(/^mailto\:/) && !a.href.match(/^tel\:/) && linkHref !== domainHref;
    };

    $("a:external").addClass("ext_link");

    $(function() {

        $('a.ext_link').click(function() {
             // open a modal 
            $('a:external').attr('data-toggle', 'modal');
            $('a:external').attr('data-target', '#speedbump');
            //go to link on modal close
            var url = $(this).attr('href');
            $('.btn-modal.btn-continue').click(function() {
                window.open(url);
                $('.btn-modal.btn-continue').off();
            });
            $('.btn-modal.btn-close').click(function() {
                $('#speedbump').modal('hide');
                $('.btn-modal.btn-close').off();
            }); 
        });

    });  
});

0 个答案:

没有答案