Maison > base de données > tutoriel mysql > Comment détecter les événements d'impression dans les applications multi-navigateurs ?

Comment détecter les événements d'impression dans les applications multi-navigateurs ?

Linda Hamilton
Libérer: 2024-11-03 15:22:02
original
310 Les gens l'ont consulté

How to Detect Print Events in Cross-Browser Applications?

Détection des événements d'impression dans les applications multi-navigateurs

Malgré la dépréciation de onbeforeprint() et onafterprint() dans les navigateurs non IE, il existe est un moyen d'obtenir des fonctionnalités similaires en utilisant window.matchMedia et window.onbeforeprint/window.onafterprint.

Utilisation de window.matchMedia

De nombreux navigateurs modernes prennent désormais en charge window.matchMedia, qui permet la détection des modifications dans les requêtes multimédias CSS . En combinant window.matchMedia avec window.onbeforeprint/window.onafterprint, il est possible de créer une approche multi-navigateurs pour détecter les événements d'impression.

Rappel d'événement

Le la fonction suivante peut être utilisée comme rappel d'événement pour window.matchMedia :

<code class="javascript">window.matchMedia('print').addListener(function(media) {
    if (media.matches) {
        // Print is starting
    } else {
        // Print has ended
    }
});</code>
Copier après la connexion

Legacy Support IE et Firefox

Pour les navigateurs qui ne prennent pas en charge window.matchMedia, il est toujours possible d'écouter directement les événements onbeforeprint et onafterprint :

<code class="javascript">$(window).on('beforeprint', beforePrint);
$(window).on('afterprint', afterPrint);</code>
Copier après la connexion

Remarque : Comme mentionné dans la réponse fournie, il est important de savoir que l'écouteur window.matchMedia peut se déclencher plusieurs fois au cours d'une même tâche d'impression dans certains navigateurs. Cela peut affecter l'exécution de vos gestionnaires d'événements, alors tenez compte de ce comportement lors de la conception de votre logique.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal