在页面加载时使用SweetAlert2作为弹出窗口

时间:2016-09-10 18:39:02

标签: javascript jquery popup sweetalert sweetalert2

页面完成加载后,我尝试将SweetAlert2用作“弹出框”。 “弹出框”叠加层下面是正常内容。

  • “弹出框”将包含访问者可以点击的 2个链接。(在框外点击不会关闭弹出窗口
  • 点击任何一个链接后,会打开相应的新标签
  • 如果检测到访问者点击了两个链接,则会解锁并将自身重定向到另一个页面

我怎样才能做到这一点?

参考:

  

How to add event listener for html buttons in sweetalert dialog box in jquery

`http://codepen.io/html5andblog/pen/jPzPWj` (this is good but it doesn't onload and redirect)

1 个答案:

答案 0 :(得分:0)

这是你的作业;) [JSFIDDLE]

swal({
  html: 
    '<a href="http://example1.com" id="link1" target="_blank">link 1</a><br>' + 
    '<a href="http://example2.com" id="link2" target="_blank">link 2</a>',
  confirmButtonText: 'Continue >',
  allowOutsideClick: false,
  allowEscapeKey: false
});

// disable "Continue >" button on load
swal.disableButtons();

// handle clicks and enable "Continue >" button when all links are clicked
var clickedLinks = [];
$('body').on('click', '.swal2-modal a', function(e) {
  var link = e.target;
  if (clickedLinks.indexOf(link) === -1) {
    clickedLinks.push(link);
  }
  // when all links are clicked enable "Continue >" button
  if (clickedLinks.length === $('.swal2-modal a').size()) {
    swal.enableButtons();
  }
});