Во всех известных мне браузерах window.print () запускает модальное окно печати, то есть окно, которое запрещает любое другое взаимодействие с веб-страницей до ее закрытия.Это сделано специально - браузер захватывает моментальный снимок веб-страницы в том виде, в каком она была отображена при начале операции печати.
Короче говоря, невозможно вызвать события мыши, когда открыто окно печати.
Лучшей альтернативой было бы инициирование события отпускания мыши в обработчике щелчков перед началом операции печати:
// Click Handler
$( "#print_icon" ).click(function() {
$(this).mouseleave();
window.print();
});
Скорее всего, вы все равно будете двигать мышь от кнопки, чтобы выбрать принтернастройки, поэтому для практических целей это решит проблему.
Обновление
setTimeout () может изменить страницу, пока модальное окнооткрыть - по крайней мере, в Firefox 5. Попробуйте это:
// Click Handler
$( "#print_icon" ).click(function() {
var that = this;
setTimeout( function() {
$(that).mouseleave();
}, 2000);
window.print();
});