javascript - Determine If Print/Cancel Button in Google Chrome's Print Preview is Clicked -


ive been printing page using code below:

window.print(); 

an image below print preview in google chrome browser looks like. has 2 main buttons: print , cancel.

enter image description here

i want know if user had click print or cancel button. did use jquery:

html code of print preview:

<button class="print default" i18n-content="printbutton">print</button> <button class="cancel" i18n-content="cancel">cancel</button> 

jquery code:

 $('button > .cancel').click(function (e) {                       alert('cancel');  });   $('button > .print').click(function (e) {                       alert('print');  }); 

i tried code above no luck. missing?

you can not access chrome's internal windows (printing dialog in case) directtly regular web page.

    (function () {          var beforeprint = function () {             alert('functionality run before printing.');         };          var afterprint = function () {             alert('functionality run after printing');         };          if (window.matchmedia) {             var mediaquerylist = window.matchmedia('print');              mediaquerylist.addlistener(function (mql) {                 //alert($(mediaquerylist).html());                 if (mql.matches) {                     beforeprint();                 } else {                     afterprint();                 }             });         }          window.onbeforeprint = beforeprint;         window.onafterprint = afterprint;      }()); 

or if want when print preview gets open can try below.

$(document).bind("keyup keydown", function (e) { if (e.ctrlkey && e.keycode == 80) { settimeout(function () { callafterwindowload();}, 5000); return true; } });

    function callafterwindowload()     {         alert("open , call");     } 

reference: how capture click event on default print menu called javascript window.print()

may if provide requirement trying 2 buttons click event, may provide alternate solution that.