踩到Window resize在Preview print的雷

最近在作案的過程中遇到一個狀況,從Art design那邊拿到的頁面,會在Window resize的時候執行某個Function,本來一切都正常,但測試到Chrome和Firefox預覽列印時發現也會Trigger這個Event,會讓在預覽列印過後的頁面發生問題,所以必須要進行修正,以下是這個案例的說明:

先在測試頁加入以下的程式,發現在預覽列印的時候會Trigger window resize event:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Preview Print Test</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script>
        $(window).resize(function() {
            console.log("Window Resize");
        });
    </script>
</head>
<body>
<h1>Window Resize Test</h1>
</body>
</html>
Preview print trigger window resize event
Preview print trigger window resize event

網路上搜尋了一下解決方案,將Script改寫如下,可以順利解決,但不知道是不是最好的方法,如果大家有更好的也別忘了告訴我唷~

openResizeFn();

// Chorme
var print = false;
var mediaQueryList = window.matchMedia('print');
mediaQueryList.addListener(function (mql) {
    if (mql.matches) {
        closeResizeFn();
    } else {
        setTimeout(openResizeFn, 2000);
    }
});

// Firefox
window.onbeforeprint = function () {
    closeResizeFn();
};
window.onafterprint = function () {
    setTimeout(openResizeFn, 2000);
};

// Common Function
function openResizeFn() {
    $(window).on("resize", windowResize);
}

function closeResizeFn() {
    $(window).off("resize", windowResize);
}

function windowResize() {
    console.log("Window Resize");
}

You may also like...

28,640 Responses

  1. RichardThini表示:

    buying prescription drugs in mexico online: medicine in mexico pharmacies – mexican drugstore online

  2. RichardThini表示:

    buy medicines online in india: world pharmacy india – Online medicine home delivery

  3. Профессиональный сервисный центр по ремонту бытовой техники с выездом на дом.
    Мы предлагаем: сервисные центры по ремонту техники в челябинске
    Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!

  4. Ремонт телефонов表示:

    Профессиональный сервисный центр сервис телефонов ремонты телефонов

  5. Gregorypurne表示:

    best ed drug https://drugs24.pro/# cat antibiotics without pet prescription

  6. BrandonJer表示:

    indian pharmacy indian pharmacy india pharmacy

  7. AgustinBougs表示:

    https://mexicanpharm24.pro/# buying from online mexican pharmacy
    Online medicine home delivery

  8. BrandonJer表示:

    п»їbest mexican online pharmacies mexican drugstore online medication from mexico pharmacy

  9. Профессиональный сервисный центр по ремонту бытовой техники с выездом на дом.
    Мы предлагаем: ремонт бытовой техники в челябинске
    Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!

  10. Stevengreve表示:

    Шофер-предатель

    Алексей Комаров, один из ключевых свидетелей обвинения по «делу «Лайф-из-Гуд» – «Гермес» – «Бест Вей», – кто он?

    Приморский районный суд Санкт-Петербурга с февраля рассматривает дело по существу, но шофер компании «Лайф-из-Гуд» и кооператива «Бест Вей» Комаров пока не выступал в суде: он прячется в своем родном городе – Твери.
    Лжец
    На следствии он заявил, что возил неучтенную наличность. В действительности он возил подарки для основателя «Лайф-из-Гуд» и кооператива «Бест Вей» Романа Василенко и кооператива «Бест Вей», возил сотрудников компании «Лайф-из-Гуд» и кооператива «Бест Вей», региональных представителей этих организаций из аэропорта и обратно: никакие деньги он никогда не возил, и никто из шоферов деньги не возил, что подтвердил в своих показаниях в суде другой шофер компании.

    Из показаний другого водителя и специалистов компании известно, что Комаров как простой шофер не знал и не мог ничего знать ничего о бизнес-процессах компании. Он никогда не был к ним допущен – тем более что в последние годы не был официально трудоустроен из-за своих проблем с судебными приставами. А самостоятельно понять никакие бизнес-процессы он не мог – у него образование восемь классов.
    Вор
    Комаров возил подарки из регионов и других стран для Романа Василенко и центрального офиса кооператива «Бест Вей»: угощения, вазы и т.п. Причем далеко не все из них, как выяснилось, довозил. Кроме того, у его пассажиров неоднократно пропадали дорогие часы и бумажники.
    Накануне начала уголовного разбирательства он взял личные вещи Василенко на хранение и отказался их отдавать, за что против него выдвинуто обвинение в краже.
    Неблагодарный
    В компании он проработал 10 лет – его с самого начала приняли как родного: приняли в семью, которую представлял собой коллектив «Лайф-из-Гуд». Василенко оплатил операцию на сердце его отцу. Алексей Комаров за это отплатил черной неблагодарностью, оговорив абсолютно всех.
    Подписывайтесь на наш канал

    Шофер-предатель

    После начала уголовного разбирательства Комаров прислал Василенко издевательский ролик, снятый у недостроенного дома для мамы Романа Василенко, со словами: «Не все мечты сбываются!»

    Вечный должник

    Компания «Лайф-из-Гуд» имела с ним массу проблем из-за того, что за ним охотились судебные приставы и коллекторы. Он делал долги и в самой компании – брал деньги взаймы у Романа Василенко и не отдавал.
    Захватил чужую квартиру и машину
    Роман Василенко дал ему возможность бесплатно жить в трехкомнатной квартире одного из своих родственников и пользоваться корпоративным минивэном.

    Эту квартиру Комаров незаконно использует до сих пор – сдает ее в аренду. А корпоративный минивэн присвоил.
    Бывший бандит
    Спустя несколько лет после трудоустройства выяснилось, что Комаров в 1990-е годы работал на преступную группировку Малышева. С этих пор ему стали давать только мелкие поручения, не связанные с материальными ценностями.

    Сейчас он выслуживается перед органами внутренних дел, чтобы его не привлекли за старые преступления – сроки давности по которым еще не прошли.
    Крыса
    Комаров тайно записывал информацию в машине и офисе – на видеокамеру и с помощью жучков, а потом передал ее следствию.
    Например, он скрытой камерой снял передачу денег Романом Василенко за участие одной из звезд в форуме «Синергия» – с этих денег были уплачены налоги. Он ставил жучки, чтобы записывать разговоры – и следователи могли монтировать высказывания, вырывая их из контекста.
    Оговорил невиновных
    По его вине девять ни в чем неповинных людей сидят в тюрьме. Например, на очной ставке с Анной Высоцкой он прямо в глаза ей, бывшему контент-менеджеру сайта «Лайф-из-Гуд», к тому же уволившемуся более чем за полгода до начала уголовного дела, рассказывал, что все время привозил и передавал ей наличные деньги. На вопрос адвоката, почему ей, а не в бухгалтерию, не смог ответить – даже не думал выстроить логичную версию, тем более что следствие готово было покрывать его ложь.

    Придется ответить
    Комаров – неблагодарная, неграмотная, лживая, алчная, трусливая, вороватая крыса. На основании лжи малограмотного шофера Лехи Комарова, в тюрьме вот уже третий год незаконно без приговора отбывают наказание невинные образованные законопослушные люди.
    Комаров понимает, что ответит за свои преступления – потому и боится появляться в суде. Но скрыться у него не получится: за преступления придется ответить в самое ближайшее время

  11. Профессиональный сервисный центр по ремонту бытовой техники с выездом на дом.
    Мы предлагаем: ремонт бытовой техники в барнауле
    Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!

  12. Storage services, or distribution reservoirs, provide clear drinking water storage (after required water therapy course of) to ensure the system has sufficient water to service in response to fluctuating calls for (service reservoirs), or to equalize the working strain (balancing reservoirs).

  13. He was based some 300km away in Jodhpur and simply occurred to be visiting this new satellite workplace spun off from the primary one in Jodhpur.

  14. Matthewweind表示:

    buy zithromax without presc: zithromax capsules 250mg – can i buy zithromax online

  15. Enamel is painting on copper dishes and tiles.I’ve painted since 2002.please assist me how can I export my merchandise?

  16. Technology Books in Science and Engineering.

  17. Matthewweind表示:

    where to get zithromax: zithromax for sale – zithromax 500 mg

  18. In 2011, the Italian regulator fined eDreams and Expedia for unfair business practices, due partly to stress from offline journey agencies.

  19. Ремонт телефонов表示:

    Профессиональный сервисный центр сервисные центры по ремонту мобильных телефонов ремонт телефонов москва

  20. Профессиональный сервисный центр по ремонту сотовых телефонов в Москве.
    Мы предлагаем: сервис телефонов
    Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!

  21. The intent is to scale back the undesirable time delay of water delivery to sprinklers that is inherent in dry programs.

  22. Stevenjaw表示:

    https://gabapentin.auction/# neurontin 2018
    zithromax drug

  23. SamuelCic表示:

    http://zithromax.company/# zithromax canadian pharmacy

  24. Rising India and Indian Communities in East Asia.

  25. Ремонт телефонов表示:

    Профессиональный сервисный центр срочный ремонт телефонов сервис ремонт телефонов

  26. Профессиональный сервисный центр по ремонту сотовых телефонов в Москве.
    Мы предлагаем: ремонт сотовых телефонов в москве
    Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!

  27. SamuelCic表示:

    http://semaglutide.win/# rybelsus cost

發佈回覆給「コンパクトサイズとは」的留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。